Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][MySQL][PHP]BETWEEN AND
inespew
post
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 18.11.2010

Ostrzeżenie: (0%)
-----


Witam

Mam problem z zapytaniem sql z between. Z formularza html dostaje do pliku tranzakcji trzy zmienne które składają sie na datę OD i trzy zmienne DO.
Te trzy zmienne łączę w jedną datę nsatępująco:

  1. $szkol_realod_od=$_POST["realod_od_r"]."-".$_POST["realod_od_m"]."-".$_POST["realod_od_d"];


i

  1. $szkol_realod_do=$_POST["realod_do_r"]."-".$_POST["realod_do_m"]."-".$_POST["realod_do_d"];


moje zapytanie wygląda następująco:

  1. $sql="SELECT * FROM szkolenia WHERE (szkol_id LIKE '%$szkol_id%') AND
  2. (szkol_nazwa LIKE '%$szkol_nazwa%') AND
  3. (szkol_ilucz LIKE '%$szkol_ilucz%') AND
  4. (szkol_ilgodz LIKE '%$szkol_ilgodz%') AND
  5. (szkol_koord LIKE '%$szkol_koord%') AND
  6. (szkol_tren LIKE '%$szkol_tren%') AND
  7. (szkol_woj LIKE '%$szkol_woj%') AND
  8. (szkol_miej LIKE '%$szkol_miej%') AND
  9. (szkol_realod BETWEEN '$szkol_realod_od' AND '$szkol_realod_do')";
  10.  
  11. echo $sql;
  12. $result=mysql_query($sql)


Wszystko wyszukuje OK pod warunkiem, że dostanę z formularza jakieś daty, natomiast jeśli podam np: szkol_name a nie dam daty nie wyszuka mi nic.

Proszę o pomoc.
Pozdrawiam

Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Musisz zapytanie budowac dynamicznie a nie na sztywno.
http://nospor.pl/wyszukiwarka-zapytanie-za...d-warunkow.html
Go to the top of the page
+Quote Post
inespew
post
Post #3





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 18.11.2010

Ostrzeżenie: (0%)
-----


Dałem radę, dzieki za pomoc

rozwiązanie:

  1. $sql="SELECT * FROM szkolenia WHERE (szkol_id LIKE '%$szkol_id%') AND
  2. (szkol_nazwa LIKE '%$szkol_nazwa%') AND
  3. (szkol_ilucz LIKE '%$szkol_ilucz%') AND
  4. (szkol_ilgodz LIKE '%$szkol_ilgodz%') AND
  5. (szkol_koord LIKE '%$szkol_koord%') AND
  6. (szkol_tren LIKE '%$szkol_tren%') AND
  7. (szkol_woj LIKE '%$szkol_woj%') AND
  8. (szkol_miej LIKE '%$szkol_miej%')";
  9.  
  10.  
  11. if (($szkol_realod_od!="--") and ($szkol_realod_do!="--"))
  12. {
  13. $sql.=" AND (szkol_realod BETWEEN '$szkol_realod_od' AND '$szkol_realod_do')";
  14. }
  15.  
  16. if (($szkol_realdo_od!="--") and ($szkol_realdo_do!="--"))
  17. {
  18. $sql.=" AND (szkol_realdo BETWEEN '$szkol_realdo_od' AND '$szkol_realdo_do')";
  19. }
  20.  
  21. echo $sql;
  22. $result=mysql_query($sql)


Nie wiem czy profesjonalnie ale działa (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 03:05