Geburtsdatum mit heute vergleichen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Geburtsdatum mit heute vergleichen

    Hallo!
    Ich lese aus meiner DB das Geburtsdatum der Mitglieder aus. -3 Tage & +7 Tage.
    PHP-Code:
    SELECT Geburtsdatum,Name FROM `TInternUserWHERE DAYOFYEARcurdate( ) ) -
    <= dayofyear( `Geburtsdatum` ) 
    AND 
    DAYOFYEARcurdate( ) ) +>= dayofyear( `Geburtsdatum` ) 
    ORDER BY dayofyear( `Geburtsdatum` )  
    LIMIT 0 30 
    Geburtsdatum ist ein Typ DATE YYYY-MM-DD!

    Meine Abfrage liefert mir die gewünschte Liste. Wie kann ich denn jetzt denn denjenigen Eintrag z.B. rot ausgeben, der HEUTE Geburtstag hat?!

    Danke!

  • #2
    SELECT IF(Geburtsdatum = DATE(NOW()), 1, 0) AS heute, ...
    oder so z.B.

    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
    Wie man Fragen richtig stellt

    Kommentar


    • #3
      Original geschrieben von ghostgambler
      SELECT IF(Geburtsdatum = DATE(NOW()), 1, 0) AS heute, ...
      oder so z.B.
      Das Geburtsdatum dürfte normalerweise nicht das heutige Datum sein ...
      Aber vielleicht so:
      Code:
      SELECT
      	IF(DAYOFYEAR(Geburtsdatum) = DAYOFYEAR(CURDATE()), CONCAT('[color=\\'red\\']', Geburtsdatum, '[/color]'), Geburtsdatum),
      	Name
      FROM
      	TInternUser
      WHERE
      	DAYOFYEAR(Geburtsdatum) tag BETWEEN DAYOFYEAR(CURDATE()) - 4 AND DAYOFYEAR(CURDATE()) + 3
      ORDER BY
      	DAYOFYEAR(Geburtsdatum)
      Der ausgegebene BB-Code muss dann natürlich umgewandelt werden. Oder einfach im Sinn von ghostgambler
      Code:
      SELECT
      	Geburtsdatum,
      	Name,
      	IF(DAYOFYEAR(Geburtsdatum) = DAYOFYEAR(CURDATE()), 1, 0) heute
      ...
      Gruss
      H2O

      Kommentar


      • #4
        Hallo! Der Code lief prima, dann ein Serverwechsel
        und jetzt wird der Geburtstag nicht mehr richtig ausgeworfen.
        Auch die Reihenfolge stimmt nicht mehr:
        PHP-Code:
        SELECT IF( DAYOFYEARGeburtsdatum ) = DAYOFYEARCURDATE( ) ) , 1)
         
        UserGeburtsdatumHeuteIDNameVornameEmailGeburtsdatum
        Hauptgemeinde
        FROM 
        `TInternUser
        WHERE DAYOFYEARcurdate( ) ) -<= dayofyear( `Geburtsdatum` ) 
        AND 
        DAYOFYEARcurdate( ) ) +>= dayofyear( `Geburtsdatum` ) 
        AND 
        GeburtsdatumAnzeigen =1
        ORDER BY dayofyear
        ( `Geburtsdatum` ) 
        LIMIT 0 30 
        Geburtdatum speicher ich in der Form JJJJ-MM-DD ab.
        Ausgabe jetzt (auf einmal):
        03.03.
        05.03.
        04.03.
        07.03.

        KANN es sein, dass der 29.02. (Schaltjahr) damit zu tun hat?!?!

        Besten Dank!

        Kommentar

        Lädt...
        X