Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][mysql] wyświetlenie danych poprzez pętle for
Forum PHP.pl > Forum > Przedszkole
mop
Witam, otóż mam taki mały problem;
pobieram dane z serwera
  1. $wynik=mysql_query('SELECT * FROM zamowienie')
  2. $_SESSION['co_wynik']=mysql_fetch_object($wynik);
  3. $_SESSION['ile_wynik']=mysql_num_rows($wynik);

i teraz chciałbym wyświetlić pobrane dane... ale w pętli for. Wiem, że łatwo to zrobić w pętli while i w sumie tak na początku miałem, ale pojawił się problem, a pętla for jest rozwiązaniem (chyba).
robie coś takiego:
  1. $ile_wynik=$_SESSION['ile_wynik'];
  2. for($i=1;$i<=$ile_wynik;$i++){
  3. echo $_SESSION['co_wynik']->imie;
  4. echo $_SESSION['co_wynik']->nazwisko;
  5. }

no ale takie coś wyświetla tylko jedno zamówienie. Próbowałem też wstawiać [$i] do $_SESSION['co_wynik'] w róznych miejscach, ale też nie pomogło...
trucksweb
jakas glupote wymyslasz

  1. foreach($wynik as $key=>$value){
  2. echo $key.'<br />';
  3. echo $value['imie'].'<br />';
  4. }



//edit
po co to wszystko pakujesz do sesji ?
ddiceman
for od while praktycznie niczym sie nie rozni - to, co mozesz zrobic whilem, zrobisz tez, forem. Jesli jestes przyzwyczajony do czegos w stylu
  1. while($row = mysql_fetchrow($result)){
  2. ...
  3. }

to wiedz, ze to to samo, co
  1. for(;$row=mysql_fetchrow($result);){
  2. ...
  3. }

a inicjowanie zmiennej i akcje kroku postepu mozesz dobierac dowoli (nawet niezalezne od siebie)
  1. for($a=0;$row=mysql_fetchrow($result);$b++){
  2. ...
  3. }

piotrooo89
przenoszę do przedszkola.
mop
Dzięki za podpowiedzi. Tak się teraz zastanawiam, może w ogóle w złym kierunku idę jeśli chodzi o mój problem, dlatego przedstawię całą stację od początku.
No więc jest strona podzielona na dwie części, w lewej znajdują się trzy przyciski; "wszystko", "nowe", "stare". Kiedy przycisnę np. "wszystko", z serwera pobierane są wszystkie zamówienia i są wyświetlane pod tymi przyciskami. Każda pozycja z listy ma linki, po naciśnięciu którego, po prawej stronie wyświetlane są szczegółowe informacje o zamówieniu. Lista zamówień po przeładowaniu strony powinna się nadal wyświetlać, bez konieczności wciskania przycisku "wszystko".

Tak z grubsza ma działać to co chcę zrobić. Oczywiście nie chodzi mi o to aby ktoś podsuwał mi gotowy kod, bo chciałbym to zrobić sam i nauczyć się tego, ale gdyby ktoś naprowadził mnie trochę i powiedział na co powinienem zwrócić uwagę, byłbym bardzo wdzięczny.


Dobra jeszcze raz i trochę inaczej. Chodzi o to że chce pobrać dane z serwera i zapamiętać je w zmiennej sesyjnej, aby móc je wyświetlać bez potrzeby ponownego pobierania. Gdy do wyświetlania zastosowałem pętle while to wyskakiwały mi błedy przy przeładowaniu strony. Pomyślałem że mógłbym zastosować pętle for i wyświetlac dane tak jak ze zwyłej tablicy, no ale to też nie chce mi działać. Stad moje pytanie odnośnie pętli for.
Jak juz napisałem, wiem że można w łątwy sposób wyświetlić dane przy pomocy while, ale mi nie o to chodzi.
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.