Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyszukiwanie rekordu w kilku tabelach
Forum PHP.pl > Forum > PHP
salva
sprawa dodawania rekordu i usuwania juz zalatwiona teraz najtrudniejsze czyli wyszukiwanie rekordow:

  1. <?php
  2.  
  3. // nawiazujemy polaczenie
  4. $connection = @mysql_connect('localhost', 'root', '')
  5. // w przypadku niepowodznie wyświetlamy komunikat
  6. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  7. // połączenie nawiązane ;-)
  8. echo "Udało się połączyć z serwerem!<br />";
  9. // nawiązujemy połączenie z bazą danych
  10. $db = @mysql_select_db('somochody', $connection)
  11. // w przypadku niepowodzenia wyświetlamy komunikat
  12. or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());
  13. // połączenie nawiązane ;-)
  14. echo "Udało się połączyć z bazą dancych!<br />";
  15.  
  16.  
  17. if (isset($_POST['haslo'])){
  18. $wynik = mysql_query("SELECT * FROM audi WHERE model='$model'")
  19. or die("Błąd w zapytaniu!"); ;
  20. }
  21. while($rek = mysql_fetch_array($wynik)) {
  22. echo $rek['model']."<br />";
  23. }
  24.  
  25.  
  26. ?>
  27. <form action="wysz.php" method="post">
  28. szukaj na podstawie:<br />
  29. <select name="szukanie">
  30. <option value="model"> model samochodu
  31. <option value="silnik"> silnik
  32. <option value="rocznik"> rocznik samochodu
  33. <input name="haslo" type=text> <br />
  34. <input type=submit value="szukaj">
  35. </form>


chcialbym aby po wybraniu slinik,model,rocznik i wpisaniu danej wartosci pokazalo mi wszystkie samochody narazie mam dwie tabele audi i seat, lecz mi to nie dziala pewni e jest tu wszystko zle
Wazniak96
Tylko po co rozwijasz marki na osobne tabele? Zrób jedną "samochody" a w niej kolumna marka, model itp..
zidek
Przede wszystkim włącz wyświetlanie błędów, korzystaj z var_dump i sprawdź jakie wartości na poszczególnym etapie są zwracane.

  1. $db = @mysql_select_db('somochody', $connection)

tutaj nie masz przypadkiem literówki? jeśli masz to przejrzyj kilka razy kod i popraw wszystkie tego typu błędy

  1. $wynik = mysql_query("SELECT * FROM audi WHERE model='$model'")
  2. or die("Błąd w zapytaniu!"); ;


Tutaj są jakieś dwa średniki na końcu, nie wiadomo po co.
Zmienna $model pojawia się tutaj po raz pierwszy, więc do DB trafia zapytanie "SELECT * FROM audi WHERE model=", co za pewne nie jest prawidłowe.

I na koniec najważniejsze: FILTROWANIE DANYCH
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.