Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Skrypt "szukanie" nie wyszykuje mi danych z bazy
Forum PHP.pl > Forum > PHP
gustafitka
Mam skrypt który nie wyszykuje mi z bazy danych nazwisk chociaz jest tak zrobiony aby wyszukiwał po jednej literze.Wogole ten skrypt był przygotowany do innej tabeli niż ja mam .
Dlatego też chcialem go dostosować do tej tabeli ale nie wiem jak.

oto skrypt

  1. <html>
  2. <head>
  3. <meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
  4. </head>
  5. <body>
  6. <form method="post" action="szukanie.php">
  7. <table>
  8. <tbody>
  9. <tr>
  10. <td> Nazwisko: <input name="NAZWISKO" value=""
  11. size="20" maxlength="20" type="text"> <br>
  12. </td>
  13. </tr>
  14. <tr>
  15. <td> <br>
  16. Nowe szukanie: <br>
  17. </td>
  18. </tr>
  19. <tr>
  20. <td> <input name="SUBMIT" value="Przeslij dane"
  21. type="submit">
  22. <p><br>
  23. <input value="Kasuj" dane="" type="reset">
  24. </p>
  25. </td>
  26. </tr>
  27. </tbody>
  28. </table>
  29. </form>
  30. <?php
  31. $NAZWISKO=$_POST['nazwisko'];
  32. if ( strlen($NAZWISKO)>): $NAZWISKO = addslashes($NAZWISKO);
  33. // poł&scaron;czenie z baz&scaron;
  34. $polaczenie = pg_Connect("dbname=Baza user=postgre port=5432 password=gustafitka host=localhost");
  35. if (!$polaczenie){ echo "Brak poł&scaron;czenia z baz&scaron;.<br>"; exit; }
  36. // szukanie w bazie
  37.  $wynik = pg_Exec($polaczenie, "SELECT * FROM pracownicy WHERE nazwisko Like '%$NAZWISKO%' ");
  38. if (pg_NumRows($wynik)==0) {
  39. //Je?li liczba wierszy jest zero 
  40. echo "Nie znaleziono odpowiadajacych rekordow w bazie.<br>"; 
  41. echo "<p><a href='szukaj.php3'>Ponowne wyszukiwanie</a>"; exit; }
  42. // wyświetlenie odnalezionych rekordów
  43. $liczba_rekordow = pg_NumRows($wynik); for ( $i=0; $i<$liczba_rekordow; $i++ ){ $ID_PRAC = pg_Result($wynik, $i, "id_pracownicy");
  44. // Zwróć uwagę na to, że $imie to zmienna PHP a imie to polew tabeli 
  45. $NAZWISKO = pg_Result($wynik, $i, "nazwisko"); 
  46. $STANOWISKO =pg_Result($wynik, $i, "stanowisko"); $DATA_ur = pg_Result($wynik, $i,"data_ur"); $ZAROBKI = pg_Result($wynik, $i, "pensja");
  47. echo "</p> <p>$ID_PRAC $NAZWISKO $STANOWISKO <br>"; 
  48. echo "Data zatrudnienia: $DATA_ur; <br> Zarobki: $ZAROBKI <br>";
  49. } 
  50. // koniec pętli for 
  51. // Ponowne wyszukiwanie: 
  52. echo "</p>
  53. <p><a href='str7.htm'>Ponowne wyszukiwanie</a>";
  54. exit; endif;
  55. ?>
  56. </p>
  57. </body>
  58. </html>


A to jest moja baza :
  1. CREATE TABLE pracownicy
  2. (
  3. id_pracownicy serial NOT NULL,
  4. id_dane int4,
  5. imie varchar(200),
  6. nazwisko varchar(200),
  7. data_ur date,
  8. CONSTRAINT pracownicy_pkey PRIMARY KEY (id_pracownicy)
  9. )
  10. WITH OIDS;
  11. ALTER TABLE pracownicy OWNER TO postgres;


Z góry dziekuje
Ar2r
W polu input name=NAZWISKO, natomiast w $_POST['nazwisko']. Spróbuj ujednolicić wielkość liter
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.