Beste mensen,

Ik kom niet helemaal uit mijn php-code om random 2 producten uit mijn database weer te geven. Ik ben tot zover gekomen:

<?php
$sql = "SELECT artikelnummer FROM Artikel";
$resultaat = mysql_query($sql);
$artikelnummer = mysql_fetch_array($resultaat);
?>

Nu staan volgens mij alle artikelnummers uit de tabel Artikel in de array $artikelnummer. Maar hoe kan ik er nu voor zorgen dat er 2 random artikelnummers uit de array worden geselecteerd?

Ik heb al e.e.a gelezen over de functie array_rand maar ik kom er niet helemaal uit. Of bouw ik de array verkeerd op?
Kijk eens naar de MYsql functie RAND

/* Edit. */

voorbeeldje:

<?PHP

/* Errors. */
error_reporting(E_ALL);

/* Query uitvoeren. */
$Query =
"
SELECT
blaat,
blaat2
FROM
tabel
ORDER BY
RAND()
LIMIT
2
";

/* Resultaat van de query. */
$Resultaat = mysql_query($Query);

/* Kijken of de query is gelukt. */
if(!$Resultaat)
{
/* Query fout. */
echo 'Foutje met de query.';
}
else
{
/* Kijken of er wel rijen zijn. */
if(mysql_num_rows($Resultaat) !== 0)
{
/* Rijen weergeven. */
$Rij = mysql_fetch_assoc($Resultaat);

echo 'blaat: '.$Rij['blaat'].' | blaat2: '.$Rij['blaat2'].'';
}
else
{
/* Geen rijen. */
echo 'Geen rijen in database.';
}
}

?>
Bedankt voor je hulp. Ik ga het straks meteen proberen. Daarmee doe je de random-functie dus al in MYSQL?

Is het ook mogelijk om artikelnummers uit te sluiten? Ik heb namelijk op mijn pagina de 2 nieuwste producten staan en vervolgens 2 random producten. Eigenlijk wil ik dus bij de randomproducten niet de 2 nieuwste producten hebben staan.
Bij je select query vul je bij blaat jouw veld in wat je wilt selecteren.

Dan kiest hij randomly 2 uit.
Bedankt voor je reactie. Ik snap inderdad hoe het bovenstaande script werkt en heb hem ook netjes toegepast in iets aangepaste vorm. Het werkt perfect!

Maar wat ik bedoelde is of het ook mogelijk was om 2 bepaalde artikelen uit te sluiten. Deze moeten dus niet bij de willekeurige producten worden getoond.

De reden daarvoor is dat de pagina is opgebouwd als volgt:

1 Eerst algemeen stukje tekst
2 Dan worden de 2 nieuwste producten getoond
3 Vervolgens worden 2 willekeurige producten getoond

Het mooiste zou zijn als de producten die bij 2 staan nooit bij 3 worden opgenomen.

Om bovenstaande iets te verduidelijken:
http://www.kakadoris.nl/index2.php
Opmerking Martijn, misschien idee om je foto's iets te resizen, kost nu veel tijd om te laden en veel bandbreedte

    SELECT
        blaat,
        blaat2
    FROM
        tabel
    WHERE
        blaat != $id1 AND
        blaat != $id2
    ORDER BY 
        RAND() 
    LIMIT 
        2

Reageren