PHP Problem mit Geburtstagsabfrage

UNIX_TIMESTAMP(CURDATE()) liefert den Timestamp des heutigen Datums 00:00

Damit findet man zwar die Personen, die heute geboren sind, aber sicher nicht alle Leute, die heute Geburtstag haben.

Ich hoffe, dass zumindest jetzt einigen Leuten ein Licht aufgeht.
 
Stimmt, folgendes sollte aber funktionieren (nicht getestet):

PHP:
$res = $db->query('SELECT * FROM relation WHERE FROM_UNIXTIMESTAMP(gebDate, DD-MM) = DATE_FORMAT(DATE(), %d-%m) SORT BY tupel DESC');
 
@XunnD
Es war doch schon alles Nötige gesagt/geschrieben...

Bei uns geht nicht nur ein Licht auf, es ist bereits seit Tagen schönster Sonnenschein.
Mit einen Blick in Kommentar #15 solltest auch du die Erleuchtung finden.

AlbertLast schrieb:
mir viel gerade auf das ich man das jahr abschneiden muss
irgendwie föllig vergessen ...
Code:
where FROM_UNIXTIME(gebDate,'%d-%m') = DATE_FORMAT(CURDATE(),'%d-%m');
 
knoxyz schrieb:
@XunnD
Mit einen Blick in Kommentar #15 solltest auch du die Erleuchtung finden.

Du solltest Dir
1) bewusst werden, wer Post #14 verfasst hat
2) dir bewusst werden, was der Post enthält (Hinweis: 1. Absatz) und
3) bewusst werden, dass #14 vor #15 kommt.
 
Und du solltest dir bewusst werden, dass der Kenntnisstand von Kommentar zu Kommentar immer mehr vergrößert wurde.
Nur bei dir ist es leider ein herber Rückschritt. :(
 
Auch bei mehrmaligem Hindeuten auf Tag und Monat ist das weder vom Threadersteller (und auf ihn kommt es vorrangig an) noch von einigen anderen Postern aufgenommen worden. Wehement wurde auf Strategien beharrt, die nicht Erfolg-versprechend waren, weil einige den Gegenstand der Aufgabenstellung nicht verstanden hatten. Mir widerstrebt der Gedanke, fertige Lösungen zu posten und so den geistigen Aufwand auf der anderen Seite minimal zu halten.
Die Analogie Fisch fangen oder Fischfang lehren passt da wohl am besten dazu.
 
Es geht voran ;)
Die Selbst-Anamnese ist doch ganz gut gelungen. :D
Jetzt nochmal eben lesen warum der vom Fragesteller verwendete Datentyp ungeeignet ist (#17)
und die Akte kann erfolgreich geschlossen werden. :streicheln:
 
So, hab das jetzt mal in den unterschiedlichsten varianten ausprobiert. Leider ohne erfolg.
$results = $db->query("SELECT * FROM `po_tus_ardning_spieler` WHERE FROM_UNIXTIME(gebDate,'%d-%m') = DATE_FORMAT(CURDATE(),'%d-%m')");

funktioniert nicht, und liefert mir NULL zurück. Obwohl heute am 9.9. jemand geb hat!


EDIT

Sorry funktioniert jetzt doch!
Habe die falsche Tabelle angegeben ;)

Danke jungs!!!!
 
Zuletzt bearbeitet:
ich hätte mal zu diesen thema noch eine frage.
wie finde ich herraus das jemand der am 29. feb geboren ist,
in nicht schaltjahren am 1. mrz geburstag hat?
kan mir gerade das sql dazu garnicht vorstellen.
 
AlbertLast schrieb:
ich hätte mal zu diesen thema noch eine frage.
wie finde ich herraus das jemand der am 29. feb geboren ist,
in nicht schaltjahren am 1. mrz geburstag hat?
kan mir gerade das sql dazu garnicht vorstellen.

Trivial:
In Normaljahren (abfragen mit date) wird die Bedingung "geboren am 1. März" mit der Bedingung "geboren am 29. Februar" verodert.

Geburtstagsabfragen hatten wir ja bereits schon im Thread. Damit sollte das kein Problem mehr sein.
 
Wir reden hier von einem PHP+MySQL Problem, also beschränkt Euch mal nicht auf MySQL. Ich sagte: mit date prüfen, ob Schaltjahr, DANN (entsprechend) Query bauen.
 
Zurück
Oben