Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] wyszukiwarka rekordów, wyszukiwarka rekordów
-wabanek-
post
Post #1





Goście







Witam
Próbuje wygenerowac kod, w którym będę mógł wyszukac rekor, w moim przypadku skoczka i wypisac wszystkie dane o nim i do tego dane z innej tablicy (np. imie trenera z tablicy trener) mój kod daje mi tylko jeden wynik (np. imię)
  1. <?php //na katalogu 2
  2. echo'<h2>Wyniki wyszukiwania</h2>';
  3. if(empty($_POST['phrase']))
  4. die('Formularz wypełniony niepoprawnie! Nie można wyświetlić wyników wyszukiwania!');
  5. else
  6. {
  7. $base=mysql_connect('localhost','root','');
  8. mysql_select_db("zawody",$base);
  9. $query="Select * From skoczek Where Imie Like '%{$_POST['phrase']}%'";
  10. $result=mysql_query($query,$base) or die(mysql_error());
  11. $obAmount=mysql_num_rows($result);
  12. echo'Znaleziono: '.$obAmount.'<br /><br />';
  13. for($x=0;$x<$obAmount;$x++)
  14. {
  15. $row=mysql_fetch_assoc($result);
  16. echo $x+1;
  17. echo '. ';
  18. echo $row['imie'];
  19. echo'<br />';
  20. }
  21. }
  22. mysql_close($base);
  23. ?>
  24.  
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 13)
adam882
post
Post #2





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

Ostrzeżenie: (0%)
-----


Nie wiem czy o to chodziło, ale w każdym razie trochę namieszałeś w kodzie
  1. <?php //na katalogu 2
  2. echo'<h2>Wyniki wyszukiwania</h2>';
  3. if(empty($_POST['phrase'])){die('Formularz wypełniony niepoprawnie! Nie można wyświetlić wyników wyszukiwania!');}
  4. else
  5. {
  6. $base=mysql_connect('localhost','root','');
  7. mysql_select_db("zawody",$base);
  8. $query='SELECT * FROM skoczek WHERE Imie LIKE "%'.mysql_real_escape_string($_POST['phrase']).'%"';
  9. $obAmount=mysql_num_rows($result);
  10. if($obAmount>0)
  11. {
  12. echo'Znaleziono: '.$obAmount.'<br /><br />';
  13. while($row=mysql_fetch_assoc($query))
  14. {
  15. echo $row['imie'].'<br />';
  16. }
  17. }
  18. else{echo 'brak';}
  19.  
  20.  
  21. }
  22. mysql_close($base);
  23. ?>

pisane z palca, nie wiem czy dziala

Ten post edytował adam882 27.11.2011, 18:40:46
Go to the top of the page
+Quote Post
-wabanek-
post
Post #3





Goście







wyskakuje mi błąd!

Notice: Undefined variable: result in C:\xampp\htdocs\search.php on line 9

Warning: mysql_num_rows() expects parameter 1 to be resource, null given in C:\xampp\htdocs\search.php on line 9
brak
Go to the top of the page
+Quote Post
Niktoś
post
Post #4





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


mysql_num_rows($result);
A ten result to nie pusta zmienna ,bo nie widzę, aby gdzieś wcześniej była zadeklarowana.Czy ni powinno być:
mysql_num_rows($query) ?

Ten post edytował Niktoś 27.11.2011, 19:20:38
Go to the top of the page
+Quote Post
-Gość-
post
Post #5





Goście







Cytat(Niktoś @ 27.11.2011, 19:19:54 ) *
mysql_num_rows($result);
A ten result to nie pusta zmienna ,bo nie widzę, aby gdzieś wcześniej była zadeklarowana.Czy ni powinno być:
mysql_num_rows($query) ?



wyskakuje mi taki błąd

Warning: mysql_num_rows() expects parameter 1 to be resource, string given in C:\xampp\htdocs\search.php on line 9
brak
Go to the top of the page
+Quote Post
adam882
post
Post #6





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

Ostrzeżenie: (0%)
-----


Przepisałem kod nie zwracając uwagi, że mysql_num_rows jest zły. Powinno być być: mysql_num_rows($query);
Go to the top of the page
+Quote Post
kadlub
post
Post #7





Grupa: Zarejestrowani
Postów: 548
Pomógł: 105
Dołączył: 4.06.2010

Ostrzeżenie: (0%)
-----


gdzie masz mysql_query?questionmark.gif

  1.  
  2.  
  3. $query=mysql_query('SELECT * FROM skoczek WHERE Imie LIKE "%'.mysql_real_escape_string($_POST['phrase']).'%"') or die(mysql_error());
  4. $obAmount=mysql_num_rows($query);


Ten post edytował kadlub 27.11.2011, 20:04:50
Go to the top of the page
+Quote Post
-wabanek-
post
Post #8





Goście







Cytat(kadlub @ 27.11.2011, 20:03:57 ) *
gdzie masz mysql_query?questionmark.gif

  1.  
  2.  
  3. $query=mysql_query('SELECT * FROM skoczek WHERE Imie LIKE "%'.mysql_real_escape_string($_POST['phrase']).'%"') or die(mysql_error());
  4. $obAmount=mysql_num_rows($query);



Działa!!!, ale tak samo jak mój kot , który podałem wcześniej, w wyniku dostaje tylko jedną kolumnę (imię) a chce dostac wszystkie (imie, nazwisko, data_ur, waga zwrost itp) i jeszcze takie pytanie czy da radę dołączyc do wyniku dane z innej tabeli np. z tabeli trenerzy (trener) ?
Go to the top of the page
+Quote Post
-wabanek-
post
Post #9





Goście







Nikt nie che sie podjąc wyzwania, czy w ogóle da radę połączyc dwie table w zapytaniu wyszukiwarki questionmark.gif?
Go to the top of the page
+Quote Post
kadlub
post
Post #10





Grupa: Zarejestrowani
Postów: 548
Pomógł: 105
Dołączył: 4.06.2010

Ostrzeżenie: (0%)
-----


  1. echo $row['imie'].'<br />';


bo wyświetlasz samo imię jak dasz $row['nazwa kolumny w bazie danych'] to ci wyświetli dane z wybranej kolumny
a żeby wyświetlić np trenera danego skoczka który znajduje się w innej tabeli to musisz mieć jakoś te tabele powiązane ze sobą np w tabeli z trenerami mieć pole id_skoczek
Go to the top of the page
+Quote Post
Niktoś
post
Post #11





Grupa: Zarejestrowani
Postów: 1 195
Pomógł: 109
Dołączył: 3.11.2011

Ostrzeżenie: (10%)
X----


Poczytaj o Union ALL
Go to the top of the page
+Quote Post
-wabanek-
post
Post #12





Goście







Cytat(kadlub @ 27.11.2011, 22:46:52 ) *
  1. echo $row['imie'].'<br />';


bo wyświetlasz samo imię jak dasz $row['nazwa kolumny w bazie danych'] to ci wyświetli dane z wybranej kolumny
a żeby wyświetlić np trenera danego skoczka który znajduje się w innej tabeli to musisz mieć jakoś te tabele powiązane ze sobą np w tabeli z trenerami mieć pole id_skoczek



no przecież, myślisz że jak ułożę zapytanie połącze tabele kluczem to wyświetli wynik z dwóch tabel ?
Go to the top of the page
+Quote Post
kadlub
post
Post #13





Grupa: Zarejestrowani
Postów: 548
Pomógł: 105
Dołączył: 4.06.2010

Ostrzeżenie: (0%)
-----


zrobiłeś tak jak mówiłem?
Go to the top of the page
+Quote Post
-wabanek-
post
Post #14





Goście







Cytat(kadlub @ 28.11.2011, 20:55:16 ) *
zrobiłeś tak jak mówiłem?


tak, działa elegancko dzięki exclamation.gif!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 06:27