Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]Pobieranie wartości CAŁEGO zapytania do zmiennej
Forum PHP.pl > Forum > Przedszkole
klausa
Witajcie.

Potrzebuję kod który wykona zapytanie, a później zapisze wynik całego - czyli nie tylko pierwsza wartość ale wszystkie do zmiennej. Help me snitch.gif
Aure
  1. <?php
  2. $result = mysql_query('SELECT * FROM tabela');
  3. while($row = mysql_fetch_assoc($result)) {
  4. $query[] = $row;
  5. }
  6. ?>

W zmiennej $query masz tablicę wielowymiarową z wynikami zapytania.
kossa
  1. <?php
  2. $query="";
  3. $result = mysql_query('SELECT kolumna FROM tabela');
  4. while($row = mysql_fetch_assoc($result)) {
  5. $query.=$row['kolumna'];
  6. }
  7. ?>


a tak masz wszystko w jednej zmiennej - jeden długi ciąg danych wyciągniętych z tabeli

w pętli do wartości ziennej $query doklejana jest za każdym razem kolejna wartość z bazy


Łukasz

p.s.
poprawiłem - kolumna :-)
nospor
@kossa a wiesz co wyswietli:
  1. <?php
  2. echo $query;
  3. ?>
po wykonaniu tweg skryptu?
Kod
ArrayArrayArrayArrayArrayArray.....

To chyba nie jest oczekiwany rezultat winksmiley.jpg
kossa
bo tam powinno być
  1. <?php
  2. $query.=$row["kolumna"];
  3. ?>
o i teraz ok - przeoczyłem smile.gif


Kossa
nospor
Cytat(kossa @ 25.07.2006, 14:22 ) *
bo tam powinno być
  1. <?php
  2. $query.=$row["kolumna"];
  3. ?>
o i teraz ok - przeoczyłem smile.gif
Kossa

a co gdy kolumn jest wiecej?
  1. <?php
  2. $query.=implode(',',$row);
  3. ?>

To na upartego, ale z takich danych to ciezko bedzie cos przetworzyc. najlepiej jak podal na poczatku Aure - wszystko do tablicy.
klausa
kossa&nospor: thx, potrzebowałbym jeszcze sposobu jak po 4 wartościach była nowa linia.
W sensie mam teraz tak:
1,2,3,4,1-2,2-2,3-3 itd.
A chce tak:
1,2,3,4
1-2,2-2,3-2,4-2 itd snitch.gif

Pomozecie z tym jeszcze snitch.gif?
Kicok
  1. <?php
  2. $var = '1,2,3,4,1-2,2-2,3-2,4-2,5,6,7,8,9,10,11,12,13,14-5,5-8,21';
  3. $arr = preg_split('#((?:[^,]+,){3}[^,]+,?)#', $var, 0, (PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE));
  4.  
  5. echo(implode('<br>', $arr));
  6. ?>


Jeśli nie chcesz mieć przecinków na końcu każdej lini, to zamień wyrażenie na:
Kod
#((?:[^\,]+\,){3}[^\,]+)(?:\,?)#
Gość
Ech, znowu ja snitch.gif
Teraz zauwa*y*em dopiero *e po pierwszym implode() dane maj* format nie taki jak napisa*em,
ale costam1,costam12,costam13,costam14costam2,costam22itd.
W sensie, mi*dzy pierwsz* a drug* lini* nie ma przecinka.
Prosz* w miar* mo*liwo*ci o spos*b, w jaki albo m*g*bym doda* tam przecinek, albo zmodyfikowany regex snitch.gif

Jeszcze jezeli to cos da, to powiem *e dane s* takie :
Imi*,Nazwisko,Data,LiczbaImi*,Nazwisko itd
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.