Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php/mysql]Wyszukiwarka i wybór, gdzie szukac
Forum PHP.pl > Forum > PHP
spit
Czesc
Chce zrobic wyszukiwarke na strone, ale z wyborem, gdzie szukac, tj. w jakiej bazie. Sa dwie bazy: zespoly i albumy a w nich kolejno tabele: [zespoly]'podstawowe' i [albumy]plyty. I cgce zrobic taka wyszukiwarke, gdzie bedzie wybor, czy szukac w jednej, w drugiej czy w obu bazach. W tej chwili mam skrypt pokazujacy wyniki z obu naraz:
  1. <?php
  2. $szukaj=$_GET['szukaj'];
  3. echo '
  4. <h1>Wyniki twojego zapytania:</h1><ul>
  5. <li><b>Zespoły:</b></li>';
  6. $polaczenie = mysql_connect('localhost','after_user','root') or die('Polaczenie nieudane'); 
  7. mysql_select_db('after_zespoly') or die('Wybranie bazy nieudane'); 
  8. $zapytanie = "select * from podstawowe where grupa like '%$szukaj%' order by 'grupa'";
  9. $wynik = mysql_query($zapytanie) or die('Zapytanie zakończyło się niepowdzeniem'); 
  10. while($rekord=mysql_fetch_array($wynik))
  11. echo '<ul><li><a href="http://zespoly.aftersound.info/'.$rekord["link"].'/">'.$rekord["grupa"].'</a></li></ul>
  12. ';
  13. echo '
  14. </ul>
  15. <ul>
  16. <li><b>Albumy:</b></li>
  17. ';
  18. $polaczenie1 = mysql_connect('localhost','after_user','root') or die('Polaczenie nieudane'); 
  19. mysql_select_db('after_albumy') or die('Wybranie bazy nieudane'); 
  20. $zapytanie1 = "select * from plyty where tytul like '%$szukaj%' order by 'tytul'";
  21. $wynik1 = mysql_query($zapytanie1) or die('Zapytanie zakończyło się niepowdzeniem'); 
  22. while($rekord1=mysql_fetch_array($wynik1))
  23. echo '<ul><li><a href="http://albumy.aftersound.info/'.$rekord1["band"].'_-_'.$rekord1["link"].'/">'.$rekord1["tytul"].'</a></li></ul>
  24. ';mysql_free_result($wynik);
  25. mysql_close($polaczenie);
  26. ?>

Tak wiec problem sprowadza sie do wykonania formularza z wyborem. W tej chwili mam cos takiego:
  1. <form name="form1" method="get" action="szukaj.php">
  2. <input name="szukaj<? echo $zespol ?>" type="text" id="szukaj<? echo $zespol ?>">
  3. <input type="submit" name="submit" value="OK">
  4. </form>
Jak zbudowac 'select' by wysylal, czego szukac w konkretnych bazach i tabelach?
thornag
Dodaj checkboxy, pozniej przed zapytaniami dodaj IFy w stylu if checked baza1 szukaj w baza1, if checked baza2 szukaj w baza dwa.

Trzeba tylko wymyslic jakis handler na wypadek gdy user nic nie wybierze. Mozna wtedy np przyjac ze chce wyszukiwac w obydwu.
NetJaro
Cytat
Trzeba tylko wymyslic jakis handler na wypadek gdy user nic nie wybierze. Mozna wtedy np przyjac ze chce wyszukiwac w obydwu.

Wtedy również sprawdzasz if'em czy coś zaznaczył.. jeżeli nie wyszukujesz w obydwu tabelach i wyświetlasz wyniki smile.gif
spit
No właśnie tak zrobiłem, mianowicie
  1. <?php
  2. if ($wybor == Albumy) { kod 
  3. } 
  4. if ($wybor == Zespoly) { kod
  5. } 
  6. if ($wybor == Wiadomosci) { kod
  7. } else {
  8. echo 'Wybierz przynajmniej jedna kategorie szukania'; }
  9. ?>
Tak więc dzieki za pomoc smile.gif
thornag
Cytat(NetJaro @ 12.08.2006, 09:31 ) *
Wtedy również sprawdzasz if'em czy coś zaznaczył.. jeżeli nie wyszukujesz w obydwu tabelach i wyświetlasz wyniki smile.gif


No przeciez wlasnie to napisalem tongue.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.