Avatar billede petermjensen Nybegynder
30. august 2005 - 19:38 Der er 4 kommentarer og
1 løsning

returnering af mysql_fetch_row

Hej,
Jeg kan simpelthen ikke forstå mysql_fetch_row (og assoc) funktionen.
Den skulle returner et array. Det vil sige at jeg burde kunne skrive:
$result = mysql_query($sqlString,$link);   
$test = mysql_fetch_row($result);
while($row =$test)
    print($row['field']);

Det virker ikke (den køre i en uendelig løkke og skriver kun den første row.
Men hvis jeg ikke kopier den hen til en variabel virker det fint:
$result = mysql_query($sqlString,$link);   
while($row = mysql_fetch_row($result))
    print($row['field']);

Hvorfor kan jeg ikke det? Mit mål er at lægge selve: $result = mysql_query($sqlString,$link);   
i en funktion og bare returner array'et.
Avatar billede arne_v Ekspert
30. august 2005 - 19:45 #1
din første kode henter kun første række til $row og assigner del til $test
uendeligt mange gange

din anden kode henter en ny række hver gang og løkken stopper når der ikke
er flere rækker
Avatar billede arne_v Ekspert
30. august 2005 - 19:46 #2
strengt taget returnerer en query jo ikke et 1D array men et 2D array
(rækker x kolonner)

enten må du returnere $result eller så må du returnere et 2D array
(eller et array af arrays hvis man kan det i PHP)
Avatar billede petermjensen Nybegynder
30. august 2005 - 19:56 #3
Ok. Nu hvor du siger kan jeg egentligt godt se det. fetch row fetcher vel bare en row og selv holder øje med positionen. Jeg ved ikke hvad jeg troede :)

Vil du ikke lige lægge et svar, så jeg kan give dig point?
Avatar billede arne_v Ekspert
30. august 2005 - 20:00 #4
gerne
Avatar billede petermjensen Nybegynder
30. august 2005 - 20:01 #5
Tak for hjælpen!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester