![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 29.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Zwracam sie do Was z prosba o pomoc... Otoz, mam utworzona jedna tabele "ksiazki" a w niej id_ksiazki, tytul, autor, rok wydania oraz isbn. Chcialbym aby w swojej utworzonej stronie byla mozliwosc wyszukiwania ksiazki ale pod wieloma wzgledami, tj. po tytule, autorze, roku wydania i isbn oraz aby wyniki byly wyswietlane w tabeli, tak jak w ponizszym skrypcie tylko, ze on dotyczy wyszukiwania tylko pod wzgledem tytulu. Jak moglbym to zrobic?? prosze o pomoc.. Kod <html>
<head> <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2"> </head> <body bgcolor="#666699"> <CENTER><H1> <FONT COLOR="red"> Szukanie ksiazki </h1> <table><tr> <td><a href="index.html"><font color="yellow">Powrót do głównej</a></td> </td></tr></table> </FONT> </H2></CENTER> <HR> <table border="0"> <form method="post" action="<?php echo $PHP_SELF?>"> <tr><td>Podaj tytuł:</td><td><input type="Text" name="xtytul" size="5"></td> <td><Input type="submit" name="submit" value="ok"></td></tr> </form></table> <? $submit=$_POST['submit']; $xtytul=$_POST['xtytul']; //---kolorek function kolor_linii() { static $kolor; if($kolor=="#EFEFEF") $kolor="#AAAAAA"; else $kolor="#EFEFEF"; return($kolor); } //--- if ($submit && $xtytul!='') { mysql_connect('localhost', '..........', '.........') or die ("Nie mozna sie polaczyc z serwerem"); mysql_select_db("..........[php][/php]") or die ("Nie mozna sie polaczyc z baza"); $result = mysql_query("SELECT tytul, autor, rok_wydania, isbn FROM ksiazki WHERE tytul LIKE '%$xtytul%' "); //--------------- $dzisiaj=date("Y-m-d"); $i=0; print ("<HR>"); print ("<FONT COLOR = blue SIZE=4> Lista dostępnych książek: $xtytul</FONT>"); print ("<P>"); // //print ("<Table border=\"0\">\n"); //print ("<tr><td>"); // //print "<font size=5>"; if(mysql_num_rows($result)!=0) { print ("<Table border=\"0\"> <tr> <td>lp.</td> <td>Tytuł</td> <td>Autor</td> <td>Rok Wydania</td> <td>ISBN</td> </tr>"); } while ($row = mysql_fetch_array($result)) { $i++; $kolorek=kolor_linii(); print ("<TR BGCOLOR=\"$kolorek\">\n"); print ("<TD>"."$i"."</TD>\n"); print ("<TD>$row[0]</TD>\n"); print ("<TD>$row[1]</TD>\n"); print ("<TD>$row[2]</TD>\n"); print ("<TD>$row[3]</TD>\n"); print ("<TD>$row[4]</TD>\n"); print ("</TR>\n"); } print ("</Table>\n"); print("<P>"); if ($i==0) print ("<b>Brak wpisów!</b>"); print "</font>"; } // submit ?> </body> <html> <head> |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 214 Pomógł: 18 Dołączył: 25.04.2009 Ostrzeżenie: (20%) ![]() ![]() |
SELECT tytul, autor, rok_wydania, isbn FROM ksiazki WHERE tytul LIKE '%{$xszukaj}%' or autor LIKE '%{$xszukaj}%' or rok_wydania LIKE '%{$xszukaj}%' or isbn LIKE '%{$xszukaj}%"
zmien xtytul na xszukaj Ten post edytował okitoki 30.05.2009, 04:05:53 -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 29.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
Chodzilo mi bardziej o to jak zrobic zeby kazde kryterium mialo swoje pole do wpisywania... tak jak w moim przykladzie jest utworzone pole "podaj tytul" i wyszukiwanie jest tylko wedlug tytulu, to potrzebuje jeszcze aby byly takie pola jak "podaj autora"(wyszukiwanie wg. autora), "podaj rok_wydania" (wyszukiwanie wg. roku wydania), jak przerobic ten formularz zeby tak bylo i czy wogole da sie to zrobic w jednym formularzu??
![]() |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 493 Pomógł: 32 Dołączył: 14.04.2008 Skąd: Lenkowski.net Ostrzeżenie: (0%) ![]() ![]() |
Tak jak wyżej pobaw sie z like i daj tam przesłane dane przez formularz, warto też zobaczyć coś takiego jak REGEX
-------------------- Wpadaj na mój kanał o PHP. Dużo mięsa 🥩!
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 94 Pomógł: 14 Dołączył: 11.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem czy o to chodzi, ale ja bym zrobił tak:
na stronie formularz do szuka nia z polami: tytuł, autor, rok wydania i ISBN. Dane z formularza odczyta skrypt PHP, który stworzy na ich podstawie zapytanie w następujący sposób:
-------------------- SzamanGN
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 29.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
niewiem, nie moge sie w tym polapac... Uzyje metody ktora zaproponowal okitoki:) a jeszcze jedna sprawa- w jaki sposob usuwac pojedynczo rekordy z tabeli i tym samym z bazy danych, chodzi mi o te rekordy ktore sa wynikiem wyszukiwania. Chcialbym aby do kazdego wyszukanego rekordu bylo pole "usun". Jak bedzie wygladal taki kod i w ktorym miejscu nalezy go umiescic?? Prosze o pomoc. Jutro mam oddac projekt bazy danych i chcialbym ja udoskonalic:)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 12:53 |