Ultimative Geburtstagsliste?

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

  • Ultimative Geburtstagsliste?

    Ich möchte aus meiner Datenbank mir die Geburtstage in einem bestimmten Zeitraum anzeigen lassen.

    Derzeit mache ist das mit einer Kombination aus PHP & MySQL für das Aktuelle, das Vormonat und das nächste Monat.


    $monataktuell=date("n");
    $vormonat=$monataktuell - 1;
    $nachmonat=$monataktuell + 1;

    $result=mysql_query("SELECT name, gebdat FROM tabelle
    WHERE MONTH(gebdat)
    BETWEEN $vormonat
    AND $nachmonat
    ORDER BY MONTH(gebdat),
    DAYOFMONTH(gebdat)");

    Nachteile:

    1. Die Liste ist lang
    2. Die Liste funktioniert nicht über den Jahressprung

    Frage: Gibt es bessere Lösungsmöglichkeiten. Mein
    Wunsch wäre überhaupt wenn ich mir nur Geburtstage
    zwischen den letzten 5 Tagen und den nächsten 25 Tagen (oder andere Zeitkreise) anzeigen lassen kann.

    Hat jemand sowas schon realistiert oder stößt man mit
    PHP & MySQL hier an gewisse Grenzen??

  • #2
    Für das Monat kann es nicht funktionieren ... versuch's mal für den Monat ... !
    carpe noctem

    [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
    [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

    Kommentar


    • #3
      Du speicherst die Geburtstage in der Datenbank als Timestamp ab und gibst einen Intervall an, welche Einträge angezeigt werden sollen.

      PHP-Code:
          $vor5tagen time() - 60*60*24*5;
          
      $in5tagen time() + 60*60*24*5;
       
          
      $sql "
                      SELECT 
                           name, gebdate 
                      FROM
                           tabelle
                      WHERE
                          gebdate>
      $vor5tagen
                      AND
                          gebdate<
      $in5tagen
                     "
      ;
          
      $qry mysql_query($sql) OR die(mysql_error()); 
      Den Rest solltest du selbst hinbekommen.

      Kommentar


      • #4
        Du speicherst die Geburtstage in der Datenbank als Timestamp ab und gibst einen Intervall an, welche Einträge angezeigt werden sollen.
        das gefummel mit php ist unnötig, das kann mysql alles selbst ... datums- und zeitfunktionen eben ... auch ein timestamp ist nicht zwingend erforderlich.
        Die Zeit hat ihre Kinder längst gefressen

        Kommentar


        • #5
          http://www.php-resource.de/forum/sho...threadid=47906 wurde ignoriert???

          Kommentar


          • #6
            Original geschrieben von TobiaZ
            http://www.php-resource.de/forum/sho...threadid=47906 wurde ignoriert???
            Das ist nicht gut wenn man so ein Verhalten tolleriert
            [color=blue]MfG Payne_of_Death[/color]

            [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
            [color=red]Merke:[/color]
            [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

            Murphy`s Importanst LAWS
            Jede Lösung bringt nur neue Probleme
            Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
            In jedem kleinen Problem steckt ein großes, das gern raus moechte.

            Kommentar

            Lädt...
            X