Gebruik van de functie
Met deze functie kun je de resultaten in een array zetten. Weet je niet hoe mysql_query() of mysql_num_rows() werkt, lees dan eerst even die tutorials door voordat je aan deze begint.
Het werkt als volgt:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
$sql = "SELECT * FROM tabel WHERE id = 1";
$res = mysql_query($sql);
// bekijk of er rijen als resultaat zijn
if (mysql_num_rows($res) >= 1)
{
// zet de resultaten in een 'array'
$row = mysql_fetch_array($res);
// je kunt nu via $row[kolom_naam] de waarde oproepen
echo 'Het id van deze rij is: '.$row[id];
}
else
{
echo 'Er zijn geen resultaten gevonden';
}
?>
$sql = "SELECT * FROM tabel WHERE id = 1";
$res = mysql_query($sql);
// bekijk of er rijen als resultaat zijn
if (mysql_num_rows($res) >= 1)
{
// zet de resultaten in een 'array'
$row = mysql_fetch_array($res);
// je kunt nu via $row[kolom_naam] de waarde oproepen
echo 'Het id van deze rij is: '.$row[id];
}
else
{
echo 'Er zijn geen resultaten gevonden';
}
?>
Als je nu bijvoorbeeld tien rijen hebt, hoef je deze code niet steeds te herhalen. Je kunt via een while() loop door de resultaten lopen. Lees hiervoor ook de while() functie. Een voorbeeld:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?
$sql = "SELECT * FROM tabel";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{
// loop door $row welke een array is met alle resultaten van de query
while ($row = mysql_fetch_array($res))
{
echo 'ID nummer: '.$row[id].'<br>';
}
}
else
{
echo 'Er zijn geen resultaten gevonden';
}
?>
$sql = "SELECT * FROM tabel";
$res = mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{
// loop door $row welke een array is met alle resultaten van de query
while ($row = mysql_fetch_array($res))
{
echo 'ID nummer: '.$row[id].'<br>';
}
}
else
{
echo 'Er zijn geen resultaten gevonden';
}
?>
Samenvatting:
Zonder rekening te houden of er wel een resultaat is of dat je door meerdere heen wilt 'lopen' werkt het zo:
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<?
$sql = "SELECT * FROM tabel";
$res = mysql_query($sql);
$row = mysql_fetch_array($res);
echo 'id: '.$row[id];
?>
$sql = "SELECT * FROM tabel";
$res = mysql_query($sql);
$row = mysql_fetch_array($res);
echo 'id: '.$row[id];
?>
Het is dus $row[id] omdat het veld id hier wordt weergeven. Als je ook een kolom naam 'email_adres' hebt in je tabel dan kun je dat zo weergeven:
echo 'email adres is: '.$row[email_adres];
Zie ook andere mysql_* functies die goed te combineren zijn met deze functie.
8-2-2007:
Update