Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: wyszukiwarka w dwoch tabelach
Forum PHP.pl > Forum > Bazy danych > MySQL
MOniToR
Poniżej zamieściłem mój skrypt wyszukiwarki, która szuka w dwóch tabelach, problem jest taki, że zwraca mi chyba cala zawartosc tabel, dokladnie nie liczyłem ale wyników było tyle, że chyba była całość w dodatku każdy wynik powtarzał się pare razy. Proszę o pomoc.
products
id | cat_id | firma_id | name | cena | dostepnosc | gwarancja | obrazek
productinfo
product_id | info_id | value
  1. <?php
  2. $search=$_POST["search"];
  3. $sql="SELECT products.id, productinfo.product_id AS ident FROM products, producti
    nfo WHERE products.name LIKE '%$search%' OR productinfo.value LIKE '%$search%'"
    ;
  4. $result = mysql_query($sql);
  5. echo $sql;
  6. while($r=mysql_fetch_array($result))
  7. {
  8.  
  9.  
  10.  
  11.  $pr_sql="SELECT * FROM products WHERE id='".$r["ident"]."'";
  12. $pr_result=mysql_query($pr_sql);
  13. $pr_row= mysql_fetch_array($pr_result);
  14.  echo "
  15.  
  16. <a href=\"product.php?id=".$pr_id."\">".$pr_row["name"]."</a><br>
  17.  ";
  18. }
  19. ?>

edit: hm powtórki są chyba przez to, że w tabeli productinfo są zapisane właściowści produktu i wyświetla mi produkt tyle razy ile ma przypisanych właściwości
spenalzo
group by?
(left) join?
MOniToR
Cytat(spenalzo @ 2006-03-31 23:51:59)
group by?
(left) join?

A co powoduje to LEFT JOJN? bo jak szukałem na forum to zobaczyłem, że wiekszosc osob w wyszukiwarkach tego uzywa ale nie zauwazylem jakiegos dokladnego opisu. Prosiłbym jeszcze o przykłąd jak mógłbym to wmontowac do mojego zapytania smile.gif
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-2024 Invision Power Services, Inc.