Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Dowolne dane z tabeli, Jak wybrać wszystkie dane
exit
post 8.07.2005, 10:38:21
Post #1





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 15.12.2004

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


Witam wszystkich

Utknąłem w zdechłym punkcie

Mam następujący kod w formularzu:

Kod
<h1>Wyszukiwanie książek w księgarni</h1>
<form action="rezultaty.php" method="post">
Wybierz metodę wyszukiwania:<br>
<select name="metoda_szukania">
<option value="autor">Autor
<option value="tytul">Tytuł
<option value="isbn">ISBN
</select><br>
Wprowadź poszukiwane wyrażenie:<br>
<input name="wyrazenie" type="text">
<br><br>


<select name="metoda_szukania_1">
<option value="autor">Autor
<option value="tytul">Tytuł
<option value="isbn">ISBN
</select><br>
Wprowadź poszukiwane wyrażenie:<br>
<input name="wyrazenie_1" type="text">
<bR><br>

<select name="metoda_szukania_2">
<option value="0-672-31697-8">0-672-31697-8
<option value="0-672-31745-1">0-672-31745-1
</select><br>


<bR>
<input type="submit" value="Szukaj">
</form>


Wszystko działa bardzo ładnie ale nie wiem jak zrobić, żeby była opcja umożliwiająca wybranie wszystkich pozycji z danej kolumny
Czyli coś takiego:

Kod
<select name="metoda_szukania_2">
<option value="0-672-31697-8">0-672-31697-8
<option value="0-672-31745-1">0-672-31745-1
<option value="wszystkie">wszystkie
</select><br>


Skrypt wygląda następująco:

  1. <?php
  2. $metoda_szukania=$HTTP_POST_VARS['metoda_szukania'];
  3. $metoda_szukania_1=$HTTP_POST_VARS['metoda_szukania_1'];
  4. $metoda_szukania_2=$HTTP_POST_VARS['metoda_szukania_2'];
  5. $wyrazenie=$HTTP_POST_VARS['wyrazenie'];
  6. $wyrazenie_1=$HTTP_POST_VARS['wyrazenie_1'];
  7.  
  8. $wyrazenie=trim($wyrazenie);
  9. $wyrazenie_1=trim($wyrazenie_1);
  10.  
  11. if (!$metoda_szukania || !$wyrazenie)
  12. {
  13. echo 'Brak parametrów wyszukiwania, spróbuj ponownie';
  14. }
  15. $metoda_szukania=addslashes($metoda_szukania);
  16. $metoda_szukania_1=addslashes($metoda_szukania_1);
  17. $metoda_szukania_2=addslashes($metoda_szukania_2);
  18. $wyrazenie=addslashes($wyrazenie);
  19. $wyrazenie_1=addslashes($wyrazenie_1);
  20.  
  21.  $db=mysql_connect('localhost', 'root', 'qwerty') or die ('nie można się połączyć<br>'.mysql_error());
  22.  
  23. mysql_select_db('ksiazkorama');
  24. $zapytanie= &#092;"select * from ksiazki where \".$metoda_szukania.\" like '%\".$wyrazenie.\"%' AND \".$metoda_szukania_1.\" like '%\".$wyrazenie_1.\"%' AND isbn='$metoda_szukania_2'\";
  25. echo $zapytanie .'<br>';
  26.  
  27. $wynik=mysql_query($zapytanie);
  28.  
  29. $ile=mysql_num_rows($wynik);
  30. echo 'Znaleziono ' . $ile .' pozycji<br>';
  31.  
  32. for ($i=0; $i<$ile; $i++)
  33. {
  34. $wiersz=mysql_fetch_array($wynik);
  35. echo '<b>' .($i+1) .'.' .'</b>' .'<b>Tytul:</b> ';
  36. echo stripslashes($wiersz['tytul']);
  37. echo '<br><b>Autor:</b> ';
  38. echo stripslashes($wiersz['autor']);
  39. echo '<bR><b>ISBN:</b> ';
  40. echo stripslashes($wiersz['isbn']) .'<br><br>';
  41. }
  42. ?>


Jak by ktoś mail pomysł jak to zrobić to bede barrrrrrrrrrdzo wdzieczny:)


--------------------
...life is just...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
nospor
post 8.07.2005, 10:48:18
Post #2





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




W przypadku, gdy wartość dla danego szukania będzie równa "wszystkie" to musisz w warunku dać wyszukiwanie po wszystkich polach dla żądanej wartości, czyli bierzesz w nawias a nawiasie full OR, po nawiasie dalej AND jak bylo. I tak dla każdego warunku.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
exit
post 8.07.2005, 10:55:58
Post #3





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 15.12.2004

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


Hmm....

Brzmi troche skomplikowanie, ale próba nic nie kosztuje zatem zabieram sie do roboty!

Dzieki


--------------------
...life is just...
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 22.06.2025 - 16:29