Avatar billede artico Novice
16. juni 2008 - 10:54 Der 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')");
Avatar billede erikjacobsen Ekspert
16. juni 2008 - 12:12 #1
Hvor tester du for 3?  Og giver den der dato-betingelse ikke noget med 24 timer ud i fremtiden?
Avatar billede artico Novice
16. juni 2008 - 12:19 #2
Har forsøgt med DESC LIMIT 3,1 men det gir ingen mening?

Det er meningen, at for hvert tilbud der "forlanges" lægges emailen i DBén, men må kun få 3 tilbud pr. 24 timer....
Avatar billede erikjacobsen Ekspert
16. juni 2008 - 12:37 #3
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?
Avatar billede artico Novice
16. juni 2008 - 12:54 #4
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....
Avatar billede erikjacobsen Ekspert
16. juni 2008 - 13:16 #5
Som sagt er der to ting.

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.
Avatar billede erikjacobsen Ekspert
16. juni 2008 - 13:29 #6
2a) ...eller også regner den faktisk de 24 timer rigtigt. Jeg havde ikke set hvad dit feltnavn var ... ;)
Avatar billede artico Novice
08. august 2009 - 13:06 #7
afslutter
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester