Hoi PHPers 8-).
Ik heb een tijdje niks van me laten horen, dit omdat ik even ben wezen expirimenteren met PHP (zonder MySQL).
Ik ben nu echter bezig met iets, en heb een vraag:
Als je een registreersysteem hebt, hoe laat je dan de 3 nieuwste gebruikers zien?
Ik weet dat je de hoogste IDs nodig hebt (bijv. 5, 4 en 3) en dat het waarschijnlijk met de COUNT functie (DSC ofzo) moet doen.
Want hij moet de IDs van hoog naar laag tellen.
Maar als je dan gebruikt:
Wes, hij wou toch met die query 3 mensen weergeven.
Nou dan zal hij een limit moeten gebruiken.
Of 2 query's met de ene de count en de andere dat data ophalen.
Ik zie weer eens wat nieuwe dingen en kom dr weer is niet uit :S
Zouden jullie me kunnen helpen?
<?php
$sql = "
SELECT COUNT(id) DSC id, naam
FROM gebruikers
ORDER BY id DESC
LIMIT 3
";
if(!$res = mysql_query($sql))
{
trigger_error(mysql_error().'<br />In query: '.$sql);
}
else
{
$row = mysql_fetch_assoc($res);
echo $row['naam'];
echo $row['naam'];
echo $row['naam'];
}
?>
Ik zou niej wete wat er fout is.
Dit is btw de foutmelding op de site
"Notice: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'id, naam FROM gebruikers ORDER BY id DESC LIMIT 3' at line 1
In query: SELECT COUNT(id) DSC id, naam FROM gebruikers ORDER BY id DESC LIMIT 3 in /usr/export/www/vhosts/funnetwork/hosting/frosting/index.php on line 73"
Staan ^^
Nee, kheb um weggehaald maar nu zie ik iets wat ik nog nooit bij mij heb gezien (na al die interne errors lol):
Notice: Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
In query: SELECT COUNT(id) id, naam FROM gebruikers ORDER BY id DESC LIMIT 3
SELECT COUNT(id) DSC id, naam
FROM gebruikers
ORDER BY id DESC
LIMIT 3
1) Wat is DSC ?
2) Waar is de GROUP BY
3) Sorteren op niks levert niks op, een id is niks.
4) Niks tellen, levert natuurlijk ook niks op. Tel op de naam, dan heb je ook geen GROUP BY nodig
5) LIMIT 3, wanneer je maar 1 rij retour krijgt, is wat overdreven.
6) Sorteren op 1 rij is eveneens overdreven, je kunt van boven naar beneden of van links naar rechts sorteren, 1 resultaat zal altijd dezelfde sortering opleveren...
Kortom, ik snap het niet of de query klopt helemaal niks van.