Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][mysql]
Forum PHP.pl > Forum > Przedszkole
gojira
Dziendobry,

mam takie pola w pliku "plik2.php"
  1. <tr>
  2. <td/><td class="right">Cena od:</td>
  3. <td><input type="text" size="10" maxlength="5" id="cenaod" name="cenaod"/></td>
  4. </tr>
  5.  
  6. <tr>
  7. <td/><td class="right">Cena do:</td>
  8. <td><input type="text" size="10" maxlength="5" id="cenado" name="cenado"/></td>
  9. </tr>


chce to co jest w tych polach wpisane pobrac i wyszukac w bazie danych. zapytanie mam takie
  1. <?php
  2. if (isset($_GET['cenaod']) || isset($_GET['cenado'])){
  3.  $where="$where Cena > '{$_GET['cenaod']}' AND Cena < '{$_GET['cenado']}' AND";
  4.  }
  5. $where=substr($where,0,-3)
  6. ?>


niestety po wpisaniu w pole cene do wyszukuje, jednak gdy wpisze od wywala mi iz zakonczono niepowodzeniem zapytanie. do tego mam problem, iz nie wiem jak zrobic, ze gdy w oba pola wpisze cene, wyszuka mi pzredzial miedzy nimi, a gdy jedno tylko to wszystko do tego kryterium...
JaRoPHP
Jest spora różnica pomiędzy funkcją isset" title="Zobacz w manualu PHP" target="_manual, a funkcją empty" title="Zobacz w manualu PHP" target="_manual. Poza tym cierpi logika twojego skryptu smile.gif.
  1. <?php
  2. if(!empty($_GET['cenaod']) && !empty($_GET['cenado'])) {
  3. $and = ' AND ';
  4. }
  5.  
  6. if(!empty($_GET['cenaod'])) {
  7. $where .= 'Cena >= ' . $_GET['cenaod'];
  8. }
  9.  
  10. if(!empty($_GET['cenado'])) {
  11. $where .= $and . 'Cena <= ' . $_GET['cenado'];
  12. }
  13. ?>
gojira
hmmm chyba jednak powinienem wpisac caly kod tu, o ktory mi chodzi a przy okazji moze rozwiazecie druga zagadke ktora jest dla mnie ciezka, zdaje sobie sprawe ze to moj bld logiczny w torzeniu zapytan itd, ale nie wiem jak go zoptymalizowac tak aby dzialalo.

Otoz gdy wpisze w pole nazwa czy Producent, przy okazji zaznaczajac checkboxa, aby szukalo tych kryteriow, jednak przy zaznaczeniu dwoch i wiecej checkboxow, wywala mi na ekran wynik name + chechboc plus wynik jakby oddzielny od innych checkboxow, i tak jak wciskam nazwe telewizora i tv, wynajdzie mi to co szukam, ale jak dodam rozne, to znajdzie mi telewizor plus wywali na ekran wszystkie poszukiwania z drugiego checkboxa. koda mam taki
  1. <?php
  2. if (isset($_GET['advanced_search'])){
  3.  
  4. $where="";
  5.  
  6. if (isset($_GET['Nazwa'])){
  7.  $where="$where `Nazwa` LIKE '%{$_GET['Nazwa']}%' AND";
  8.  }
  9.  if (isset($_GET['Producent'])){
  10.  $where="$where `Producent` LIKE '%{$_GET['Producent']}%' AND";
  11.  }
  12.  if (isset($_GET['Opis'])){
  13.  $where="$where `Opis` LIKE '%{$_GET['Opis']}%' AND";
  14.  }
  15. if ($_GET['Rozne']=="1"){
  16. $where="$where Rodzaj='Rozne' OR";
  17. }
  18. if ($_GET['TV']=="1"){
  19. $where="$where Rodzaj='TV' OR";
  20. }
  21. if ($_GET['Kuchnia']=="1"){
  22. $where="$where Rodzaj='Kuchnia' OR";
  23. }
  24. if ($_GET['Muzyka']=="1"){
  25. $where="$where Rodzaj='Muzyka' OR";
  26. }
  27. if (!empty($_GET['cenaod'])) {
  28. $where= "$where Cena >= '{$_GET['cenaod']}' AND";
  29. }
  30. if (!empty($_GET['cenado'])) {
  31. $where= "$where Cena <= '{$_GET['cenado']}' AND";
  32. }
  33. $where = "WHERE $where";
  34. $where=substr($where,0,-3);
  35.  
  36. }
  37. $result = mysql_query ("$query $where") or die ("Zapytanie zakończone niepowodzeniem");
  38. ?>

cena dzial btw; chyba dzieki temu empty, za co dziekuje smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.