code voor één rij

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jurgen B

Jurgen B

08/03/2008 17:03:00
Quote Anchor link
Dag 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:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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'].' ';
    }
}


?>
 
PHP hulp

PHP hulp

22/10/2020 08:29:09
 
Joren de Wit

Joren de Wit

08/03/2008 17:08:00
Quote Anchor link
De while loop is dan inderdaad niet nodig, die kun je dus gewoon weglaten:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$row
= mysql_fetch_assoc($res);
echo 'Gemiddelde: '.$row['gemiddelde'];
?>
 
Frank -

Frank -

08/03/2008 17:18:00
Quote Anchor link
Offtopic: 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...
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 
Jurgen assaasas

Jurgen assaasas

08/03/2008 17:22:00
Quote Anchor link
Die 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.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.