Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]Wyszukiwrka rekordów i pokazanie ich w tabeli.
Forum PHP.pl > Forum > Przedszkole
Makciek
Witam
Mam pytanie jak zrobić wyszukiwarkę rekordów, która będzie wyświetlała rekordy w tabeli?
Spawnm
używasz mysql_query" title="Zobacz w manualu PHP" target="_manual do szukania i np mysql_fetch_assoc" title="Zobacz w manualu PHP" target="_manual aby dostać tablicę wyników
skowron-line
@Spawnm zapomniałeś o Mysql.
Select + WHERE
+ MOZE
LIKE

+ phpowe to co kolega wyżej.
pablo_83
tak szybko wyszukasz rekordy z tabeli i wyświetlisz interesujące Cię (WHERE Idtabeli = $id) - dajesz = kiedy wyszukujesz po liczbach w tym przypadku id, a like jak pisał ktoś wyżej jeśli wyszukujesz po string'ach


  1. <?php
  2. $zapytanie = ("SELECT * FROM tabela WHERE Idtabeli = $id ORDER By wg czego ma sortować ASC");
  3.   $wynik = mysql_query($zapytanie);
  4.   $row = mysql_fetch_array($wynik);
  5.      
  6.         echo
  7.         'IdTabeli - '.$row['IdTabeli'].'<br />
  8.         nazwa 1 - '.$row['kolumna1'].'<br />
  9.         nazwa 2 - '.$row['kolumna2'].'<br />
  10.         nazwa 3 - '.$row['kolumna3'].<br />
  11.  
  12.  
  13.    mysql_close() or die(mysql_error());
  14.    ?>
Makciek
to ma być w osobnym pliku?
ma być formulrz w którym wpisywało by się potrzebne haslo i to ma byś osobny skrypt czy jak to zrobić?
Spawnm
tak z ciekawości -> znasz chociaż podstawy php ?
pablo_83
ogólnie każdy skrypt php powinien być w osobnym pliku, a nie razem z html, to dajesz w pliku oczywiście na początku ma byc łączenie z bazą itp
Makciek
więc jeśli mam taki formularz html:
  1. <h1>Wyszukiwarka:</h1>
  2. <form action="wyszukiwarka.php" method="post">
  3. <input name="wyszukaj" type="text"><br/>
  4. <input type="submit" value="Wyszukaj" />
  5. </form>


Więc co mam zrobić żeby na tej stronie był wyświetlany wynik, a może być i na innych, wtedy zrobię to w ramkach.
I czy w ogóle to dobrze zrobiłem tongue.gif.
Chodzi mi o taką wyszukiwarkę która wyszuka mi rekord w którym występuje dane słowo.
np:
w rekordzie jest:
Nazwa tel adres itp. itd.
coś coś tam 000 warszawa itp itd

i po wpisaniu do wyszukiwarki coś lub coś tam, 000, warszawa, itp, itd - coś z tych haseł to żeby były wyświetlane wszystkie rekordy w których jest podane hasło.
pablo_83
  1. <?php
  2. $zapytanie = ("SELECT * FROM tabela");// ---- * to jeśli chcesz wyświetlić wszystko, jeśli nie zamiast niej konkretna kolumna
  3.   $wynik = mysql_query($zapytanie);
  4.  
  5.    echo '<form action="wyszukiwarka.php"  method="post">';
  6.    $ile = mysql_num_rows($wynik) or die(mysql_error());
  7.   if($ile>0)
  8.   {
  9.   for($i=0; $i<$ile; $i++)
  10.   {
  11.       $row = mysql_fetch_array($wynik);
  12.  
  13.         echo '<input type="radio" name="id" value="'.$row['kolumnaTabeli'].'" />'.$row['kolumnaTabeli'].'<br />';
  14.  
  15.  
  16.   }
  17.    echo '<br /><br /><input type="submit" value="Pokaż ankietę"/>';
  18.    }
  19.    echo '</form>'
  20. ?>


tak powinno wyświetlić ci spis rekordów wg wybranej kolumny,i wybierasz przez 'radio' wybierasz konkretną kolumne ze szczegółami.

Ta opcja jest prostsza bo nie musisz pisać porównywania danych wprowadzanych przez użytkownika z tymi w bazie (bierz pod uwagę że użytkownik nie zawsze wpisze poprawną wartość np. tel 456fs8455, mail- aaa@hh.aaa.d1)
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.