Hallo zusammen,
ich bin gerade dabei den Birthday2 Block so zu ändern das mir nicht nur die Geburtstag von heute angezeigt werden sondern auch der nächste Geburtstag.
Das was mir jetzt noch fehlt ist die SQL Abfrage um den nächsten Geburtstag zu ermitteln.
Die folgende Abfrage gibt mir die heutigen Geburtstage aus:
$sql2 = "SELECT uname, (YEAR( CURRENT_DATE ) - YEAR( user_bday )) - ( RIGHT( CURRENT_DATE, 5 ) < RIGHT( user_bday, 5 ) ) AS user_age FROM {$user_prefix}_users WHERE MONTH(user_bday)=MONTH(CURRENT_DATE) AND DAYOFMONTH(user_bday)=DAYOFMONTH(CURRENT_DATE) AND YEAR(user_bday)<YEAR(CURRENT_DATE) AND user_stat=1 ORDER BY user_age DESC;";
Kann mir jemand dabei helfen die Abfrage umzustellen?
Moin :)
das ist nen ganz schöner Brocken....
Im Internet hab ich auch nichts richtig funktionierendes gefunden, aber ich glaub ich habs....
SELECT
uname,
user_bday,
(YEAR(CURRENT_DATE) - YEAR(user_bday)) - (RIGHT(CURRENT_DATE, 5) < RIGHT(user_bday, 5)) AS user_age,
DATEDIFF(DATE(DATE_FORMAT(user_bday, CONCAT(IF((RIGHT(CURRENT_DATE, 5) <= RIGHT(user_bday, 5)), YEAR(CURRENT_DATE), YEAR(CURRENT_DATE)+1), '-%m-%d'))), CURRENT_DATE) as days_to
FROM `{$user_prefix}_users`
WHERE user_bday IS NOT NULL AND user_bday <> '0001-01-01' AND user_bday <> '0000-00-00' AND user_stat=1
HAVING days_to <= 3
ORDER BY days_to ASC, user_age DESC
Anbei ein kompletter Beispielblock für pragmaMx 1.12rc ;)