Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zapisanie wartości selecta z wielu tabel
Forum PHP.pl > Forum > Przedszkole
Neojawor
mam selecta:
  1. <?php
  2. $zapytanie = 'SELECT t1.*, t2.* FROM t1 INNER JOIN t2 ON t1.id = t2.t1_id WHERE t1.id = ' . $id;
  3. ?>
Z T1 będzie jeden rekord (zawsze), ale do niego będzie przypisane kilka rekordów z T2.
Nie mam pojęcia jak z tego wyciągnąć poszczególne dane.
Nie wiem nawet jakie pytanie zadać wyszukiwarce (tak, to bym nie zaśmiecał forum).

Próbowałem użyć $wiersz=mysql_fetch_array(), ale w zmiennej "$wiersz" mam tylko pierwszy rekord wyniku, a jak robię pętlę:
  1. <?php
  2. $wynik = mysql_query( $zapytanie, $ses_id);
  3. $liczba = mysql_num_rows($wynik);
  4. $t2_zmienna1 = array();
  5. $t2_zmienna2 = array();
  6. for ($i=0; $i <$liczba; $i++)
  7. {
  8. $wiersz = mysql_fetch_array($wynik)
  9. $t2_zmienna1[$i] = $wiersz[6];
  10. $t2_zmienna2[$i] = $wiersz[7];
  11. }
  12. $t1_zmienna1 = $wiersz[1];
  13. $t1_zmienna2 = $wiersz[2];
  14. $t1_zmienna3 = $wiersz[3];
  15.  
  16. ?>

to wywala mi błąd:
Cytat
parse error, unexpected T_VARIABLE in /public_html/panel/noindex/edycja_z_zycia.php on line 22
gdzie linia 22, to tutaj 10.

Nie mam koncepcji [B]H.E.L.P.
revyag
Manual nie gryzie. To jest dział php początkujący ale pytasz o podstawy podstaw. Szukaj pod hasłami: mysql_fetch_object,mysql_fetch_array.
Neojawor
Oki, ja to wszystko czytałem, ale chodzi mi o zapisanie wszystkich komórek z jednej kolumny do jednego arraya - i to tutaj nie daję sobie rady.

edit: Pod hasłem Array w manualu też nie znalazłem odpowiedzi na nurtujące mnie pytanie
revyag
Możesz tak(jeśli jest inny sposób, niech mnie ktoś poprawi:)), ale powiedz co chcesz osiągnąć, może obędzie się bez dodatkowej tabeli i da się to załatwić w jednej pętli.

  1. <?php
  2. $result=mysql_query("select kolumna from tabela");
  3. $arr = array();
  4. $i=0;
  5. while($field=mysql_fetch_array($result)) {
  6. $arr[$i++] = $field[0];
  7. }
  8. ?>
Neojawor
widze że miałem dobrą ideę sam kombinując, ale coś było nie tak, za to Ty podsunąłeś mi dobre rozwiązanie (o to mi chodziło). Zmieniłem tu tylko jedno:
  1. <?php
  2. $i=0;
  3. while($field=mysql_fetch_array($result)) {
  4. $arr[$i] = $field[0];
  5. $i++;
  6. }
  7. ?>

dzięki temu chcąc robić kilka takich array-ów, nie muszę do każdego brać nowego identyfikatora.

ps.wielkie dzięki
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.