06. oktober 2020 - 10:51Der er
6 kommentarer og 1 løsning
dato og tid
Hej jeg har en sms reminder, som sender en sms til dem der har en opgave samme dag. where dato = DATE_ADD(CURDATE(), INTERVAL +0 day)"; Den virker fint.
nu vil jeg gerne sende en sms til dem der har en opgave inden for den næste time, på datoen.
jeg har prøvet flere ting, men virker ikke.
SELECT * FROM `opgaver` where dato = DATE_ADD(CURDATE(), INTERVAL +0 day) and Klokken = DATE_ADD(CURTIME(), INTERVAL +1 hour) Er der nogle der har lidt hjælp.
rigtigt, de er i hvert deres felt. en beboerforening som vælger dato, starttid - sluttid og hvem der skal udføre opgaven. Kan ikke rigtigt se hvordan jeg skulle opfange det i et felt. men nm det, det er ok du syntes det er dårligt design.
jeg køre et cron job, hver dag kl 7, så de der har en opgave på dagen får en sms. Men nu ville de også gerne have en ca en time før. så jeg ville køre et cron 1 minut over 8, 9, 10, ect ect så dem der har en opgave kl 14 feks, får en sms kl 13.01. nu snakkes der om between, men gør interval +1 hour ikke det samme?
Interval gør at du kan tilføje/fratrække "units" på en dato/datotid. Så hvis vi siger klokken nu er:
15:46, så vil DATE_ADD(CURTIME(), INTERVAL 1 HOUR) give tiden 16:46. Og du er jo netop interesseret i at finde de opgaver der starter mellem NU og om 1 time.
Så du vil gerne have opgaverne der opfylder:
dato = CURDATE() // Opgaver der matcher I DAG AND starttid BETWEEN CURTIME() AND DATE_ADD(CURTIME(), INTERVAL 1 HOUR).
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.