Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]Porównanie dwóch tabel
Forum PHP.pl > Forum > Przedszkole
szczalpi
Witam
Mam problem z porównaniem dwóch tabel. Mój problem to, że źle wyświetla mi zapytanie. Chciałbym aby tabela kody_pocztowe porównała "miasta" z atrakcjami - "miasto" i wyświetliło mi wyniki z tabeli atrakcje - "opis".
Mój kod Sql:
  1. SELECT atrakcje.miasto FROM atrakcje, kody_pocztowe WHERE kody_pocztowe.miasta='$pokaz'

Proszę o pomoc nie wiem, w którym momencie mam błąd.
Pozdrawiam

Poniżej podaje dwie tabele

1. To jest atrakcje - nazwa tabeli "atrakcje"
id kat tytul miasto wojewodztwo opis
10072 8 Grzybowo Grzybowo Grzybowo to miejscowość letniskowa położona w bezp
10073 11 Zatoka Grzybowo Zatoka Grzybowska to akwen wodny o szerokości sied

2. To są kody pocztowe - nazwa tabeli "kody_pocztowe"
id kod_pocztowy wojewodztwo miasta powiat gmina
74985 78-132 zachodniopomorskie Grzybowo kołobrzeski Kołobrzeg
mmmmmmm
Brak ci joina
zbychoCom
Chyba jest tam błąd w założeniach.
To działanie można wykonać na jednej tabeli:
SELECT atrakcje.opis FROM atrakcje WHERE miasto='$pokaz'
szczalpi
WItam
NIe działa zapytanie
  1. SELECT atrakcje.opis FROM atrakcje WHERE miasto='$pokaz'
nospor
Skoro ci nie działa, to może weź wyświetl błąd zapytania....
mysql_error()
szczalpi

  1. $ask_kategorie = mysql_query("SELECT atrakcje.opis FROM atrakcje WHERE miasto='$pokaz' ");
  2. while($row = mysql_fetch_array($ask_kategorie))
  3. {
  4.  
  5. ?>
  6. <p style="color: black"> <? echo $row['opis']; ?></p>
  7. <?
  8. echo mysql_errno($ask_kategorie);
  9. }
  10. ;
  11.  
  12. ?>
nospor
Miałeś wyświetlić błąd zapytania....
  1. $ask_kategorie = mysql_query("SELECT atrakcje.opis FROM atrakcje WHERE miasto='$pokaz' ") or die(mysql_error());


Temat: Jak poprawnie zada pytanie

A jeśli kod, co ci podałem nie wyświetla ci błędu, znaczy że zapytanie jest ok, tylko nie ma miasta, które spełnia Twój warunek. W takim wypadku:
  1. echo "SELECT atrakcje.opis FROM atrakcje WHERE miasto='$pokaz' ";

Ale to wszystko masz w linku, do którego cię odesłałem.
szczalpi
Przy echo zwraca numer rekordu, który znajduję się w tabeli "kody_pocztowe" = 66928

  1. SELECT atrakcje.opis FROM atrakcje WHERE miasto='66928'
nospor
No to nic dziwnego, że ci nic nie znajduje, jak ty miasto porównujesz kodem pocztowym.
szczalpi
Dlatego chciałbym zrobić, aby z tabeli kody_pocztowe pobierało .iasto i porównało z tabelą atrakcje miasto i pokazało wynik .
nospor
Super. Popieram. Słuszna decyzja smile.gif
Tylko dlaczego w swoim pierwszym zapytaniu i tak porównujesz miasto z kodem?
....... WHERE kody_pocztowe.miasta='$pokaz'
szczalpi
Dlatego chciałbym poprawić to to smile.gif. Dałem takie zapytanie, ale nie wiedziałem czy dobrze jest do konca.
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.