Erelid |
|
Ten eerste doe je tellen niet met SELECT * FROM blaat etc, maar als volgt:
SELECT COUNT(id) FROM priveberichten WHERE gebruiker = x
SELECT COUNT(id ) FROM priveberichten WHERE gebruiker = x
Die query haal je dan door mysql_result(mysql_query(QUERY HIER),0);
En dat is dus het aantal.
De laatste PM selecteer je met SELECT query, waar je sorteert op datum (oplopen, dus de oudste eerst), en een LIMIT van 1.
Dat klopt dus min of meer nu, op 1 ding na:
$last_query = mysql_query("SELECT id FROM priveberichten WHERE naar = '".addslashes($_GET['uid'])."' ORDER BY datum ASC LIMIT 1");
$last = $last_query[id];
$last_query = mysql_query("SELECT id FROM priveberichten WHERE naar = '".addslashes($_GET['uid'])."' ORDER BY datum ASC LIMIT 1"); $last = $last_query[id];
Je hebt daar geen fetch functie, dus mysql_fetch_assoc of iets dergelijks.
En wat ik me ook afvraag: waarom zet je overal die addslashes($_GET['uid']), aan de naam zou ik afleiden dat dit enkel een NUMMER kan zijn? Als iemand via de URL een woord of iets dergelijks zou ingeven kan je toch gewoon bovenaan controleren met ctype_digit() of het al dan niet numeriek is? En dan moeten die enkele quotes rond die nummers ook niet in je query. En die addslashes dus helemaal niet.
Overigens had ik die reactie verwijderd omdat dat de pap in de mond geven was, en je daar dus niks van bijleert. |