Nico Heßler: geburtstagsübersicht mit php

hallo,

ich möchte gerne eine übersicht über geburtstage haben. so, dass ich auf einem blick sehen kann wer im januar geburtstag hat. so ähnlich wie bei web.de .die daten liegen in einer mysql datenbank und sind leider im format tt.mm.jjjj .das ganze soll keine sortierung nach alter sein sondern nach monat und tag.

vielen Dank!

Nico

  1. Hallo Nico,

    ich möchte gerne eine übersicht über geburtstage haben. so, dass ich auf einem blick sehen kann wer im januar geburtstag hat. so ähnlich wie bei web.de .die daten liegen in einer mysql datenbank und sind leider im format tt.mm.jjjj .das ganze soll keine sortierung nach alter sein sondern nach monat und tag.

    Die Datums- und Zeitfunktionen werden Dir helfen:
    http://www.mysql.com/doc/en/Date_and_time_functions.html

    Beachte dort:
    DAYOFMONTH(date)
    MONTH(date)

    Deine Select-Anweisung sollte also Tag und Monat der Geburtstage (in zwei Spalten) ermitteln, sortiert zuert nach Monat, dann nach Tag.

    Gruss,

    Vinzenz

    1. Die Datums- und Zeitfunktionen werden Dir helfen:
      http://www.mysql.com/doc/en/Date_and_time_functions.html

      Beachte dort:
      DAYOFMONTH(date)
      MONTH(date)

      vielen dank Vinzenz
      aber die daten sind leider nicht in dem format '1998-02-03' sondern '03.02.1998' also die deutsche schreibweise. geht das dann auch mit der funktion?

      Nico

      1. Hallo Nico,

        vielen dank Vinzenz
        aber die daten sind leider nicht in dem format '1998-02-03' sondern '03.02.1998' also die deutsche schreibweise. geht das dann auch mit der funktion?

        Datumsangaben sollte man mit dem Datentyp
        DATE
        abspeichern, das macht einem später das Leben einfacher :-)

        Sind aber alle Datumsangaben in dem Format, dann kannst Du Tag und Monat mit
        split()
        rausfinden, Trennzeichen ist der Punkt (.)

        Anschließend überlegen, wie Du Deine Arrays sortierst, das macht richtig Arbeit.

        Daher Tipp: Konvertiere Deine Datumsangaben in das Datumsformat. Falls Du das machen willst und Fragen hast, einfach weiter posten.

        Gruss,

        Vinzenz

        1. danke.
          das problem ist, dass ich die daten von web.de habe und die mir die so geschickt haben.
          ich probiere es mal. ansonnsten melde ich mich!!!

          Nico

          1. Hi,

            das problem ist, dass ich die daten von web.de habe und die mir die so geschickt haben.

            ich reiche hier mal formale Beschwerde ein. Willst Du Dir bis dahin vielleicht eine Lösung mit SUBSTRING() überlegen?

            Cheatah

            --
            X-Will-Answer-Email: No
        2. Sind aber alle Datumsangaben in dem Format, dann kannst Du Tag und Monat mit
          split()
          rausfinden, Trennzeichen ist der Punkt (.)

          Anschließend überlegen, wie Du Deine Arrays sortierst, das macht richtig Arbeit.

          ich bekomme es nicht hin.
          erstmal die daten holen:

          mysql_select_db("adressbuch") or die("<font color=red>Auswahl der Datenbank fehlgeschlagen</font><br>");
          $sql="SELECT Kurzname , Geburtstag FROM adressen";
          $res=mysql_query($sql, $db);
          list ($day, $month, $year) = split (".", $Geburtstag);

          aber da scheiterts schon. die variablen $day, $month, $year sind leer. und wie kann ich nach 2 variablen sortieren? sort() z.b. sortiert ja nur eine variable bzw. array.

          Nico

  2. Hi,

    so ähnlich wie bei web.de .die daten liegen in einer mysql datenbank

    nein, bei WEB.DE liegen die Daten _nicht_ in einer MySQL-Datenbank. Vertrau mir, ich weiß das.

    Cheatah, SCNR

    --
    X-Will-Answer-Email: No
    1. nein, bei WEB.DE liegen die Daten _nicht_ in einer MySQL-Datenbank. Vertrau mir, ich weiß das.

      ist doch egal. ich wollte ja nur das ausgabe format beschreiben, damit man weiß was ich meine. muss ja nicht so kmpliziert sein, dass man für jeden monat einen eigene tabelle macht.

      Nico