16. juni 2008 - 10:54Der er
6 kommentarer og 1 løsning
Hvis der er 4 poster i forvejen?
Jeg vil gerne checke om en email er i DBén, den må kun være der 3 gange inden for 24 timer, har prøvet følgende, uden resultat, hvad mangler jeg?
$besoegt_idag = mysql_query("SELECT COUNT(*) AS antal FROM tilbuds_counter WHERE email='$_POST[kunde_email]' AND date_add(time,interval 24 HOUR) > NOW() ORDER BY id DESC LIMIT 0,1") or die(mysql_error()); if (!mysql_result($besoegt_idag,0)) { mysql_query("INSERT INTO tilbuds_counter (email, time, uge, ip) VALUES ('$_POST[kunde_email]',NOW(),'$uge','$ip')");
Din limit giver ingen mening - resultatet af sådan en COUNT(*) bliver altid een række. Og i din if-sætning har du fat i tallet, men sammenligner det i hvert fald ikke med 3. Hvad bliver resultatet af den først sql-sætning?
Den går ind og checker om email adressen er lagt i DB indenfor 24 timer? og tillader kun 1 email adresse pr. 24 timer, men jeg vil gerne have den til at acceptere 3 ens email adresser pr. 24 timer. Men hvis jeg ændre: if (!mysql_result($besoegt_idag,0)) { til: if (!mysql_result($besoegt_idag,3)) { Får jeg fejl at den ikke kan gå til row 3 ? hmm Ved ikke lige hvor jeg skal ændre....
1) Du sammenligner ikke mysql_result($besoegt_idag,0) med 3 - og du bør ved udskrift kontrollere, at den regner rigtigt 2) For så vil du måske se at den kigger på de poster, der oprettet fra nu, og 24 timer frem.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.