Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Skrypt wyszukiwarki, co nie gra?
Martin24
post
Post #1





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 2.08.2005
Skąd: pomorskie

Ostrzeżenie: (30%)
XX---


Powiedzcie, co tu nie gra, bo już się gubię... W założeniu powinno działać, ale daje zawsze tylko jeden wynik, i to tylko jeśli słowo poszukiwane występuje w tytule, bo już jeśli występuje w autorza albo opisie, ale nie w tytule, daje: Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/jansway/ftp/sklep/c/index.php on line 74.

  1. <?php
  2.  
  3. require_once ('../../mysql_connect.php');
  4.  
  5. // Tworzę tabelę na czas wyszukiwania...
  6. $tabela = &#092;"CREATE TABLE tmp (book_id VARCHAR(6))\";
  7. $utworz = @mysql_query ($tabela) or die (mysql_error());
  8.  
  9. // Pierwsze zapytanie daje wynik w postaci id książek, w których tytuł
  10. // LIKE słowo kluczowe i wstawia wynik w posaci id do czasowej tabeli...
  11. /// To samo robi zapytanie drugie i trzecie. 
  12. $query1 = &#092;"SELECT id FROM books WHERE autor LIKE '$search%' \"; 
  13. $result1= @mysql_query ($query1) or die (mysql_error()); 
  14. $row1= mysql_fetch_array($result1);
  15. $wstaw1 = &#092;"INSERT INTO tmp (book_id) VALUES ('{$row1[0]}')\";    
  16. $akcja1 =  @mysql_query ($wstaw1) or die (mysql_error());
  17.  
  18. $query2= &#092;"SELECT id FROM books WHERE tytul LIKE '$search%' \"; 
  19. $result2 = @mysql_query ($query2) or die (mysql_error()); 
  20. $row2 = mysql_fetch_array($result2);
  21. $wstaw2 = &#092;"INSERT INTO tmp (book_id) VALUES ('{$row2[0]}')\";    
  22. $akcja2 =  @mysql_query ($wstaw2) or die (mysql_error());
  23.  
  24. $query3 = &#092;"SELECT id FROM books WHERE opis LIKE '%$search%' \"; 
  25. $result3 = @mysql_query ($query3) or die (mysql_error()); 
  26. $row3 = mysql_fetch_array($result3);
  27. $wstaw3 = &#092;"INSERT INTO tmp (book_id) VALUES ('{$row3[0]}')\";    
  28. $akcja3 =  @mysql_query ($wstaw3) or die (mysql_error());
  29.  
  30. // Tutaj wybiera listę poukładanych w odpowiedniej kolejności wyników zapytania
  31. $query4 = &#092;"SELECT * FROM tmp\"; 
  32. $result4 = @mysql_query ($query4) or die (mysql_error());
  33. $row4 = mysql_fetch_array($result4);
  34.  
  35. // Wybiera wszystkiepozycje z tabeli books (w odpowiedniej kolejności),
  36. // którym odpowiada book_id z czasowej tabeli tmp z limitem do 5 pozycji...
  37. $odczyt = &#092;"SELECT autor , tytul  FROM books WHERE id = {$row4[0]} LIMIT 0,5\";
  38. $result_odczyt = @mysql_query($odczyt) or die (mysql_error());
  39. $row_count = mysql_num_rows($result_odczyt);
  40.  
  41. ?>


Ten post edytował Martin24 7.08.2005, 22:17:23
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 15.09.2025 - 23:00