[ gooxi @ 12.07.2007. 19:00 ] @
Pozdrav ljudi.
Problem je sledeci.

Imam bazu podataka i u njoj tabelu Stanovi.Kolone tabele su:Vrsta,Kvadratura,Lokacija,Cena,Sprat.

Zelim da preko Jedne padajuce liste izaberem npr. jednosobni i onda na submit i on izlista sve stanove gde je vrsta jednosoban.
Ja sam probao na sledeci nacin,ali imam problem.

Prvo imam jednu formu ciji je kod:

Code:
 <form action="pretraga.php" method="post">

Izaberite kriterijum pretrage:<br />

<select name="kriterijum">

<option value="Jednosoban">Jednosoban</option>

<option value="Jednoiposoban">Jednoiposoban</option>

<option value="Dvosoban">Dvosoban</option>
...

</select><br/>

<input type="submit" value="Pretraga">

</form>      


i sledeci PHP kod pretraga.php

Code:

<?php

// promenljive koje sadrze vrednosti sa formulara

$searchtype=$HTTP_POST_VARS['kriterijum'];

//VAZNO: proveriti da li je posetilac na formularu selektovao kolonu pretrage
if (!$searchtype ){
   echo 'Niste korektno popunili formular. Molimo Vas da ponovo posetite stranicu sa formularom .'; 
   exit;  }

//filtriranje podataka koje je uneo posetilac u slucaju da sadrze prelazne sekvence \ ' " ....  escape_sequence
$searchtype = addslashes($searchtype);  


/*uspostavljenje  veze  */

@ $db = mysql_pconnect('localhost', 'user', 'pass');

if (!$db){
        echo 'Error: Nije obavljeno povezivanje sa bazom. Pokusajte ponovo';
        exit;
}

//izbor baze
mysql_select_db('ime baze');


$upit="select * from Stanovi  where Vrsta='$searchtype'";


$res=mysql_query($upit) or die (mysql_error());
$broj_kolona = mysql_num_fields($res);

$num_results = mysql_num_rows($res);

echo '<p><font color=#FF6633>Broj nadjenih Stanova:'.$num_results.'</font></p>';

echo "<table border=1 bgcolor=#FF6633 #FF6633><tr>";

 //zaglavlje tabele
for($i=0;$i < $broj_kolona;$i++){
    $ime_kolone=mysql_field_name($res,$i);
    echo "<td>$ime_kolone</td>";
 }
 echo "</tr>";
 //podaci iz tabele
 while($row=mysql_fetch_assoc($res)){
    echo "<tr>";
    for($j=0;$j < $broj_kolona;$j++){
     $ime_kolone=mysql_field_name($res,$j);
     print("<td>".$row[$ime_kolone]."</td>");
    }
    echo "</tr>";
 }
 echo "</table>";
 mysql_free_result($res);
?>


Kada na formi izaberem npr. jednosobni i kliknem na submit dugme izbaci mi broj stanova:0 i zaglavlje tabele.
Ali kada u upit stavim $upit="select * from Stanovi where Vrsta='jednosoban'" odradi sve i izbaci sve jednosobne stanove.Vec dva dana se ubijam sa ovim ali ne vidim resenje,pa Vas molim ako znate da mi pomognete.
Pozdrav svima i hvala unapred.
[ mb_sa @ 12.07.2007. 19:19 ] @
<option value="Jednosoban">Jednosoban</option>

Jednosoban != jednosoban

Stavi malo slovo "j" ...
[ gooxi @ 12.07.2007. 19:35 ] @
Hvala ti veliko.
Ne mogu da verujem u cemu je bio problem,i da nisam mogao da ga vidim.
Ali u svakom slucaju HVALA.
[ gooxi @ 17.07.2007. 18:09 ] @
Ovo sada savrseno radi,ali problem je sada sledeci:

kako rezultate pretrage prikazati na vise strana kada ima vise rezultata pretrage?
Npr. na prvoj strani prikaze prvih 10 rezultata a ispod tabele stoji link ka sledecoj strani sa sledecih deset?
Da li treba previse prepravki ove skripte?
[ mb_sa @ 17.07.2007. 18:28 ] @
Citat:
gooxi: Ovo sada savrseno radi,ali problem je sada sledeci:

kako rezultate pretrage prikazati na vise strana kada ima vise rezultata pretrage?
Npr. na prvoj strani prikaze prvih 10 rezultata a ispod tabele stoji link ka sledecoj strani sa sledecih deset?
Da li treba previse prepravki ove skripte?


To što ti treba se zove pagination (ili na našem paginacija). Vise problema na ovu temu je obrađeno u okviru ovog foruma, a google ce također izbaciti bruku rezultata za ključnu riječ "php pagination"!