code voor één rij
Jurgen B
08/03/2008 17:03:00Dag mensen,
Ik ben bezig met een PHP & MySQL tutorial en het gaat best goed. Ik wil graag leren om scripts te kunnen lezen (begrijpen wat er staat) en kleine aanpassingen te kunnen doen.
Nou wil ik een gemiddelde uit een database halen, maar momenteel plaats ik die in een while. Ik weet (lees: denk) dat dat niet juist is en wil jullie daarom vragen ..
Wat te doen bij 1 resultaat? Ik weet dat bij meerdere resultaten while gebruikt moet worden, maar wat bij 1 resultaat zoals bij mijn gemiddelde.
Mijn code is nu:
Ik ben bezig met een PHP & MySQL tutorial en het gaat best goed. Ik wil graag leren om scripts te kunnen lezen (begrijpen wat er staat) en kleine aanpassingen te kunnen doen.
Nou wil ik een gemiddelde uit een database halen, maar momenteel plaats ik die in een while. Ik weet (lees: denk) dat dat niet juist is en wil jullie daarom vragen ..
Wat te doen bij 1 resultaat? Ik weet dat bij meerdere resultaten while gebruikt moet worden, maar wat bij 1 resultaat zoals bij mijn gemiddelde.
Mijn code is nu:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
include 'db_config.php';
$sql = "
SELECT
AVG(salaris_schaal) AS gemiddelde
FROM
werknemers
";
if(!$res = mysql_query($sql))
{
trigger_error(mysql_error(). '<br />In query' .$sql);
}
else
{
while($row = mysql_fetch_assoc($res))
{
echo 'Gemiddelde: '.$row['gemiddelde'].' ';
}
}
?>
include 'db_config.php';
$sql = "
SELECT
AVG(salaris_schaal) AS gemiddelde
FROM
werknemers
";
if(!$res = mysql_query($sql))
{
trigger_error(mysql_error(). '<br />In query' .$sql);
}
else
{
while($row = mysql_fetch_assoc($res))
{
echo 'Gemiddelde: '.$row['gemiddelde'].' ';
}
}
?>
PHP hulp
04/12/2024 09:51:16Joren de Wit
08/03/2008 17:08:00De while loop is dan inderdaad niet nodig, die kun je dus gewoon weglaten:
Frank -
08/03/2008 17:18:00Offtopic: Wetenswaardigheidje, de gebruikers van Oracle, PostgreSQL en SQLite kunnen zonder while-lus de complete resultset fetchen:
oci_fetch_all()
pg_fetch_all()
sqlite_fetch_all()
Gebruikers van PDO kunnen met PDOStatement->fetchAll() aan de slag, zo kun je het ook voor andere databases gebruiken.
Met deze functies dump je in 1x de complete resultset in een array. Voor het weergeven van deze array heb je uiteraard wel weer een lus nodig, maar dat heb je nooit nodig wanneer je nog met de database ligt te rommelen.
Erg handig om een strakke scheiding tussen database, applicatie en presentatie af te dwingen.
Edit: Speciaal voor de wat lui aangelegde programmeurs...
oci_fetch_all()
pg_fetch_all()
sqlite_fetch_all()
Gebruikers van PDO kunnen met PDOStatement->fetchAll() aan de slag, zo kun je het ook voor andere databases gebruiken.
Met deze functies dump je in 1x de complete resultset in een array. Voor het weergeven van deze array heb je uiteraard wel weer een lus nodig, maar dat heb je nooit nodig wanneer je nog met de database ligt te rommelen.
Erg handig om een strakke scheiding tussen database, applicatie en presentatie af te dwingen.
Edit: Speciaal voor de wat lui aangelegde programmeurs...
Gewijzigd op 01/01/1970 01:00:00 door Frank -
Jurgen assaasas
08/03/2008 17:22:00Die fetch all methode is wel handig, zo kun je dus echt je code goed gescheiden houden. Die zou ik er eens in moeten houden, thnx Frank.