Avatar billede learner Praktikant
20. april 2011 - 12:15 Der er 12 kommentarer og
1 løsning

bruger TO_DAYS, men findes der ikke TO_HOURS?

Hej jeg er vant til at bruge TO_DAYS og vil høre om der findes noget der kan fungere som TO_HOURS?

Fx:

... AND (TO_DAYS(NOW())-TO_DAYS(ci.customers_info_date_account_created))  >= " . NOPURCHASE_PASSED_DAYS . "



... AND (TO_HOURS(NOW())-TO_HOURS(ci.customers_info_date_account_created))  >= " . NOPURCHASE_PASSED_HOURS . "

På forhånd tak :o)
Avatar billede arne_v Ekspert
20. april 2011 - 15:14 #1
Der er kun TO_DAYS og TO_SECONDS.

Men proev og check TIMEDIFF!
Avatar billede learner Praktikant
20. april 2011 - 15:25 #2
ahh så kan jeg måske lave noget i stil med:

AND (TO_SECONDS(NOW())-TO_SECONDS(ci.customers_info_date_account_created))  >= " . ((NOPURCHASE_PASSED_HOURS/60)/60) . "


??? ville det virke?
Avatar billede arne_v Ekspert
20. april 2011 - 15:34 #3
Ja bortset fra at du nok vil gange med og ikke dividere med 60.
Avatar billede learner Praktikant
20. april 2011 - 16:04 #4
nåe ja doop :o)

Månne Tak for hjælpen :o)

Point til dig hvis du vil ha det.
Avatar billede arne_v Ekspert
20. april 2011 - 16:06 #5
svar
Avatar billede learner Praktikant
20. april 2011 - 16:14 #6
hmm underligt jeg får en fejl når jeg bruger det...

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 '(NOW())-TO_SECONDS(ci.customers_info_date_account_created)) >= 86400 ' at line ...

Jeg kan da ik se nogen fejl i dette:

define('NOPURCHASE_PASSED_HOURS', 24);

og her det jeg har ændret til:
... AND (TO_SECONDS(NOW())-TO_SECONDS(ci.customers_info_date_account_created))  >= " . ((NOPURCHASE_PASSED_HOURS*60)*60) . " ...
Avatar billede arne_v Ekspert
20. april 2011 - 16:38 #7
Hvad er der foer '(NOW ?

Og er der ikke en ) for meget ?
Avatar billede learner Praktikant
20. april 2011 - 16:47 #8
nej jeg skriver noget i stil med

"select from xxx where xx=yy

AND (TO_SECONDS(NOW())-TO_SECONDS(ci.customers_info_date_account_created))  >= " . ((NOPURCHASE_PASSED_HOURS*60)*60) . "

AND blabla=blabla "
Avatar billede learner Praktikant
20. april 2011 - 16:49 #9
kun udskiftet dette:

AND (TO_DAYS(NOW())-TO_DAYS(ci.customers_info_date_account_created))  >= " . NOPURCHASE_PASSED_DAYS . "

med dette:

AND (TO_SECONDS(NOW())-TO_SECONDS(ci.customers_info_date_account_created))  >= " . ((NOPURCHASE_PASSED_HOURS*60)*60) . "

og det plejer at virke :o)
Avatar billede arne_v Ekspert
21. april 2011 - 02:23 #10
Er du paa MySQL 5.5 ?
Avatar billede learner Praktikant
21. april 2011 - 13:19 #11
hmm nej det er
PHP Version 5.2.17

er det derfor?
Avatar billede arne_v Ekspert
21. april 2011 - 18:15 #12
Det er ikke PHP versionen men MySQL versionen som er afgoerende.

Og ja funktionen er ny i 5.5.
Avatar billede learner Praktikant
22. april 2011 - 16:28 #13
Nåe ja sorry, dumt af mig :)

jeg tjekker det lige
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