mysql_fetch_assoc

mysql_fetch_assoc -- Haal een resultaat rij op als een associatieve array

Beschrijving

array mysql_fetch_assoc ( resource result)

Haalt een associatieve array op die correspondeert met de gehaalde rij , of FALSE als er geen rijen meer zijn .

mysql_fetch_assoc( ) is equivalent met het aanroepen van mysql_fetch_array( ) met MYSQL_ASSOC voor de optionele tweede paramter . Hij geeft alleen een associatieve array terug . Dit is de manier waarop mysql_fetch_array( ) oorspronkelijk functioneerde . Als je zowel de numerieke als de associatieve indices nodig hebt , gebruik dan mysql_fetch_array( ) .

Als twee of meer kolommen van het resultaat dezelfde veldnaam hebben zal de laatste kolom precedentie hebben . Om toegang te krijgen tot de andere kolommen met dezelfde naam , moet je het resultaat verkrijgen via numiereke indices door mysql_fetch_row( ) te gebruiken of alias namen toevoegen . Zie het voorbeeld bij de mysql_fetch_array( ) beschrijving over aliassen .

Belangrijk is het door te hebben dat mysql_fetch_array( ) is niet significant langzamer dan het gebruik van mysql_fetch_row( ) , terwijl het een duidelijke toegevoegde waarde heeft .

Voorbeeld 1 . Een uitgebreid mysql_fetch_assoc( ) voorbeeld

 
?php

 
$conn

 
=

 
mysql_connect(

 
"localhost"

 
,

 
"mysql_user"

 
,

 
"mysql_password")

 
;

 
if

 
(!$conn

 
)

 
{

 
echo

 
"Kan

 
geen

 
verbinding

 
maken

 
met

 
de

 
DB

 
:

 
"

 
.

 
mysql_error()

 
;

 
exit

 
;

 
    }

 
if

 
(!mysql_select_db("mydbname")

 
)

 
{

 
echo

 
"Kan

 
mydbname

 
niet

 
selecteren

 
:

 
"

 
    }

 
$sql

 
=

 
"SELECT

 
id

 
as

 
userid

 
,

 
fullname

 
,

 
userstatus

 
FROM

 
sometable

 
WHERE

 
userstatus

 
=

 
1"

 
;

 
$result

 
=

 
mysql_query($sql)

 
;

 
if

 
(!$result

 
)

 
{

 
echo

 
"Kon

 
de

 
query

 
($sql

 
)

 
niet

 
uitvoeren

 
:

 
"

 
.

 
mysql_error()

 
;

 
exit

 
;

 
    }

 
if

 
(mysql_num_rows($result

 
)

 
==

 
0

 
)

 
{

 
echo

 
"Geen

 
rijen

 
gevonden

 
,

 
niets

 
te

 
printen

 
,

 
dus

 
stoppen

 
."

 
;

 
exit

 
;

 
    }

 
/

 
/

 
Terwijl

 
er

 
nog

 
een

 
rij

 
met

 
data

 
is

 
,

 
stop

 
die

 
rij

 
in

 
$row

 
als

 
een

 
/

 
/

 
associatieve

 
array

 
.




 
Als

 
je

 
slechts

 
een

 
rij

 
terug

 
verwacht

 
,

 
hoef

 
je

 
/

 
/

 
geen

 
loop

 
te

 
gebruiken

 
.




 
Als

 
je

 
extract(

 
$row)

 
;

 
binnen

 
de

 
volgende

 
/

 
/

 
loop

 
plaatst

 
,

 
ontstaan

 
$userid

 
,

 
$fullname

 
en

 
$userstatus

 
.

 
while

 
($row

 
=

 
mysql_fetch_assoc($result)

 
)

 
{

 
echo

 
$row["userid"]

 
;

 
echo

 
$row["fullname"]

 
;

 
echo

 
$row["userstatus"]

 
;

 
    }

 
mysql_free_result($result)

 
;

 
?



Voor verdere details , zie ook mysql_fetch_row( ) , mysql_fetch_array( ) en mysql_query( ) .