Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: petla nieskonczona :/
Forum PHP.pl > Forum > Bazy danych > MySQL
borec
nie wiem czy ktos jeszcze to zauwazyl:

[php:1:4efc56f5d9]<?php
$query = "SELECT id FROM tabela"; // zapytanie sql
$result = mysql_query($query);

while ($array = mysql_fetch_array($result)) {
...
}
?>[/php:1:4efc56f5d9]

tutaj wszystko jest ok, ale:

[php:1:4efc56f5d9]<?php
$query = "SELECT id FROM tabela"; // zapytanie sql

while ($array = mysql_fetch_array(mysql_query($query))) {
...
}
?>[/php:1:4efc56f5d9]

petla jest nieskonczona :?
ktos mi powie co jest grane?
BzikOS
Jak to co.. zadajesz cały czas to samo zapytanie do bazy i cały czas to samo Ci zwraca.
scanner
just say LOL
borec
yyy... chyba jeszcze nie bardzo czaje jak to wszystko dziala :wink:
spenalzo
W pierwszym przypadku zapytanie wwykonujesz raz, i jego wyniki przypisujesz do zmiennej $result. Następnie w pętli podajesz tylko zasób do zapytania - nie wykonujesz w pętli samego zapytania.

Natomiast w przypadku drugim wykonujesz w pętli w kółko to samo zapytanie. Pętla się powinna skończyć gdy mysql_fetch_array() zwróci false, ale nie zwraca ponieważ bez przerwy dostaje wynik zapytania, a ponieważ dane nie przestają spływać funkcja mysql_fetch_array nie zwraca false, i pętla się wykonuje w nieskończoność smile.gif
borec
Cytat
Pętla się powinna skończyć gdy mysql_fetch_array() zwróci false, ale nie zwraca ponieważ bez przerwy dostaje wynik zapytania, a ponieważ dane nie przestają spływać funkcja mysql_fetch_array nie zwraca false, i pętla się wykonuje w nieskończoność


i od razu wszystko jasne i klarowne 8) smile.gif
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.