Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MYSQL] PObieranie 1 zapytanie z kilku tabel
-Gościówa-
post 18.08.2008, 13:22:10
Post #1





Goście







Mam problem z pobraniem za pomocą 1 zapytania danych z kilku tabel przedstawię przykład:

  1. <?
  2. $sql = @mysql_query("SELECT * FROM tabela1, tabela3");
  3.  
  4. while ($fo = mysql_fetch_array($sql)) {
  5. $id = $fo['id'];
  6. $id = $fo['id'];
  7. }
  8. ?>


I chcę pobrać z tabeli tabela1 i tabela3 zawartość pola ID jak to zrobić. Przecież nazwa pola jest taka sama ?!
Go to the top of the page
+Quote Post
golaod
post 18.08.2008, 13:28:02
Post #2





Grupa: Zarejestrowani
Postów: 419
Pomógł: 42
Dołączył: 12.08.2008
Skąd: Wrocław

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


Tak jak mówisz, przy takich samych polach wartości są zamieniane na te z drugiej smile.gif
Go to the top of the page
+Quote Post
-Gościówa-
post 18.08.2008, 16:43:18
Post #3





Goście







NIe rozumiem ja chcę wiedzieć jak ma wyglądać lina:

$id = $fo['id'];

Czy to ma wyglądać tak ?: $id3 = $fo['tabela3.id'];
Go to the top of the page
+Quote Post
rybik
post 18.08.2008, 16:56:53
Post #4





Grupa: Zarejestrowani
Postów: 99
Pomógł: 15
Dołączył: 29.07.2006

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


spróbuj aliasów

  1. SELECT * FROM (table1 AS t1,table2 AS t2)
Go to the top of the page
+Quote Post
-Gościówa-
post 18.08.2008, 19:40:05
Post #5





Goście







Ale to chyba zbędne nie ma innych rozwiązań ?
Go to the top of the page
+Quote Post
rybik
post 18.08.2008, 22:23:32
Post #6





Grupa: Zarejestrowani
Postów: 99
Pomógł: 15
Dołączył: 29.07.2006

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


może i zbędne ale poprawne, działające i popularne, co więcej - nie widać innych mniej zbędnych rozwiązań

http://www.webdeveloper.com/forum/archive/...p/t-147475.html
Go to the top of the page
+Quote Post
bmL
post 19.08.2008, 01:28:16
Post #7





Grupa: Zarejestrowani
Postów: 301
Pomógł: 25
Dołączył: 15.07.2007
Skąd: Olsztyn

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


Nie potrzeba aliasów dla tabeli.
  1. <?php
  2. $sql = @mysql_query("SELECT tabela1.id as id1, tabela3.id as id2 FROM tabela1, tabela3");
  3. while ($fo = mysql_fetch_array($sql)) {
  4. echo $fo['id1'].'<br>';
  5. echo $fo['id2'];
  6. ?>


Albo wogóle bez aliasów:
  1. <?php
  2. $sql = @mysql_query("SELECT tabela1.id, tabela3.id FROM tabela1, tabela3");
  3. while ($fo = mysql_fetch_row($sql)) { // mozna dać też mysql_fetch_array()
  4. echo  $fo['0'].'<br>';
  5. echo  $fo['1'];
  6. ?>

Jeżeli się nie mylę bo nie mam siły sprawdzić tongue.gif

Ten post edytował bmL 19.08.2008, 01:31:07


--------------------
Tutaj miał być jakiś mądry tekst. Miał być... No ale jest głupi tekst.
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 Wersja Lo-Fi Aktualny czas: 6.07.2025 - 12:22