[ djos @ 07.06.2004. 15:57 ] @
imam sledeci problem. izvrsavam neku pretragu i onda kada izvrsim pretragu preko neke forme (imam def f-ju search_form gde ovo izvrsavam)prikaze mi sve te podatke iz baze uz pomoc f-je koju sam nazvao list_records(). To sve funkcionise dok ne pozelim da te podatke ne sortiram po nekom drugom redosledu i tada sam u tabeli napravio link:

<A HREF="<?php echo "$PHP_SELF?action=list&sort_order=$sort_order&order_by=username"; ?>">

koji bi opet trebao da pozove f-ju list record i da izbaci iste podatke sada sortirane po npr ovde username-u.
Medjutim ja non stop dobijam da ne postoji nijedan podatakr jer mislim da nisam ovoj funkciji prosledio promenljive $struka, $staz i $sprema po kojima sam izvrsio sql query.
U prvom navratu kada sam ovu f-ju pozvao sa gornje forme (search_form()) to radi medjutim cim je pozovem da sortira ovako on kaze da ne postoji nijedan korisnik sa ovakvim karakteristikama.
moze li mi neko pomoci da resim ovaj problem t.j. kako da on zna da opet vrsi sql query po ovim parametrima.
mislim da sam bio poprilicno jasan a ako nisam postavite podpitanja sta vam nije jasno.
P.S. Ovo list u okvirpoziva f-ju list_records() to sigurno rad da ne bude zabune.
[ broker @ 07.06.2004. 16:16 ] @
Sto malo ne uprostis? Prepravi tu funkciju koja izvorno nalazi podatke da ima i parametar koji odredjuje kako ce nadjeni podaci biti sortirani.

Ostaje ti samo da resis nacin prosledjivanja parametara, ako nije prosledjen parametar za sort korsiti neki podrazumevani redosled a ako je prosledjen, sortiraj po zadatom kriterijumu.

Naravno, na ponovljen upit funkciji moras proslediti sve parametre.

Parametre mozes prosledjivati tako kako si krenuo, u samom URL-u, ili preko forme (post i get) za koju priliku mozes korsititi i hidden promenljive u formi.

U svakom slucaju, u funkciji namesti da ti prikaze SQL upit koji izvrsava pa ces videti da li su svi parametri prosledjeni ispravno a onda krenes unazad dok ne dodjes do tacke gde je greska.

Meni se cini da si se samo zapetljao oko prosledjivanja parametara.
[ djos @ 07.06.2004. 22:24 ] @
evo imam ovakav kod:
promenljive $struka, $sprema, $staz sam dobio iz search_form() ali se gube kada ponovo pozovem list.

$query = "SELECT count(*) FROM $kadar_tablename WHERE struka='$struka'OR sprema='$sprema'OR staz='$staz';";

$result = mysql_query($query);
if(!$result) error_message(sql_error());

$query_data = mysql_fetch_row($result);
$total_num_user = $query_data[0];
if(!$total_num_user) error_message('Nije pronadjen nijedan korisnik!');
$page_num = $cur_page + 1;

$total_num_page = $last_page_num
= ceil($total_num_user/$records_per_page);

html_header();

echo "<CENTER><H3>$total_num_user kadrova je pronadjeno. Prikazujem stranu
$page_num od $last_page_num.</H3></CENTER>\n";

if(empty($order_by)) {
$order_by_str = "ORDER BY $default_order_by";
$order_by = $default_order_by;
}
else $order_by_str = "ORDER BY $order_by";
if(empty($sort_order)) {
$sort_order_str = $org_sort_order = $default_sort_order;
$sort_order = 'DESC';
}
else {
$sort_order_str = $org_sort_order = $sort_order;
if($sort_order == 'DESC') $sort_order = 'ASC';
else $sort_order = 'DESC';
}

if(empty($cur_page)) {
$cur_page = 0;
}
$limit_str = "LIMIT ". $cur_page * $records_per_page .
", $records_per_page";


$query = "SELECT id_kadra, username,ime, prezime, struka, sprema, staz, angazovanje FROM $kadar_tablename WHERE struka='$struka'OR sprema='$sprema'OR staz='$staz'
$order_by_str $sort_order_str $limit_str";

$result = mysql_query($query);
if(!$result) error_message(sql_error());
?>

<div align="center">
<center>
<table border="1" cellpadding="4" cellspacing="0" bordercolor="#DCE0ED" bordercolorlight="#DCE0ED" bordercolordark="#DCE0ED" style="border-collapse: collapse">

<tr bgcolor="#355E99">
<td bgcolor="#DCE0ED" height="19" bordercolorlight="#DCE0ED" bordercolordark="#DCE0ED">
<div align="center"><font color="#800000"><A HREF="<?php echo "$PHP_SELF?action=list&sort_order=$sort_order&order_by=ime"; ?>">
Username
</A></font></b></div>
</td>
<td bgcolor="#DCE0ED" height="19" bordercolorlight="#DCE0ED" bordercolordark="#DCE0ED">
<div align="center"><b><font color="#800000"><A HREF="<?php echo "$PHP_SELF?action=list&sort_order=$sort_order&order_by=prezime"; ?>">
Prezime
</A></font></b></div>
</td>
<td bgcolor="#DCE0ED" height="19" bordercolorlight="#DCE0ED" bordercolordark="#DCE0ED">
<div align="center"><b><font color="#800000"><A HREF="<?php echo "$PHP_SELF?action=list&sort_order=$sort_order&order_by=prezime"; ?>">
Prezime
</A></font></b></div>
</td>
<td bgcolor="#DCE0ED" height="19" bordercolorlight="#DCE0ED" bordercolordark="#DCE0ED">
<div align="center"><b><font color="#800000"><A HREF="<?php echo "$PHP_SELF?action=list&sort_order=$sort_order&order_by=struka"; ?>">
Struka
</A></font></b></div>
</td>
<td bgcolor="#DCE0ED" height="19" bordercolorlight="#DCE0ED" bordercolordark="#DCE0ED">
<div align="center"><font color="#800000"><b><A HREF="<?php echo "$PHP_SELF?action=list&sort_order=$sort_order&order_by=sprema"; ?>">
Sprema
</A></b></font></div>
</td>
<td bgcolor="#DCE0ED" height="19" bordercolorlight="#DCE0ED" bordercolordark="#DCE0ED">
<div align="center"><font color="#800000"><b><A HREF="<?php echo "$PHP_SELF?action=list&sort_order=$sort_order&order_by=staz"; ?>">
Staz
</A></b></font></div>
</td>
<td bgcolor="#DCE0ED" height="19" bordercolorlight="#DCE0ED" bordercolordark="#DCE0ED">
<div align="center"><font color="#800000"><b>Funkcije</b></font></div>
</td>

</tr>



Evo gde je problem i kod svih ovih tagova:


<A HREF="<?php echo "$PHP_SELF?action=list&sort_order=$sort_order&order_by=ime"; ?>">
Username
</A>
kod ovoga reda ne znam kako da zapamtim $struka, $staz i $obrazovanje da bi opet izvrsio ovaj kveri samo po drugom kriterijumu.
Ako neko moze neka pomogne dosta mi je vazno.
[ _owl_ @ 08.06.2004. 00:13 ] @
A da dodas te promenljive u link ??
Code:

<A HREF="<?php echo "$PHP_SELF?action=list&sort_order=$sort_order&order_by=ime" . 
[b] " &struka=" . urlencode($struka) [/b] 
. "; ?>">
Username
</A>
[ broker @ 08.06.2004. 00:22 ] @
I ne vidim razlog za dva upit nad bazom. Dovoljan je jedan.
[ djos @ 09.06.2004. 11:34 ] @
HVALA, uradio sam i funkcionise onaj gornji red uz male izmene.
[ _owl_ @ 09.06.2004. 20:55 ] @
Citat:
broker:I ne vidim razlog za dva upit nad bazom. Dovoljan je jedan.

Ti si citao onaj kod (bas imas vremena i volje na pretek)??
[ broker @ 09.06.2004. 21:18 ] @
Coveku je trebala pomoc, stavio je kod, zasto da ne pogledam?
Nisam ga citao celog, nego letimicno, ipak se tu lako vidi sta je sta.

SELECT upada u oci pa se primeti.