Alter berechnen anhand MySQL "DATE"

Diskutiere Alter berechnen anhand MySQL "DATE" im Webmaster Hilfe / Programmierer Forum Forum im Bereich Computerprobleme; So leute.. hab ein problem^^ Will das alter eines Users anhand eines MySQL Felds mit seinem Geburtstag (DATE) [Syntax: YYYY-MM-DD] berechnen......

  1. Nico

    Nico Ehemaliges Teammitglied

    Dabei seit:
    28.10.2005
    Beiträge:
    6.676
    Zustimmungen:
    0
    So leute.. hab ein problem^^

    Will das alter eines Users anhand eines MySQL Felds mit seinem Geburtstag (DATE) [Syntax: YYYY-MM-DD] berechnen...

    habs jetz so gmacht

    PHP:
    function get_age($mysql_date) {
      
    $datearray explode("-"$mysql_date);
      
    $gebyear $datearray[0];
      
    $gebmonth $datearray[1];
      
    $gebday $datearray[2];
      
    $yearnow date(Y);
      
    $monthnow date(m);
      
    $daynow date(d);
      
    $yeardiff $yearnow $gebyear;
      
    $monthdiff $monthnow $gebmonth;
      if (
    $monthdiff 0) {
          
    $age $yeardiff;
      } elseif (
    $monthdiff 0) {
        
    //Tage abziehen
        
    if ($daynow $gebday == 0) {
          
    //Ui, der hat ja heut geb!
          
    $age "" $yeardiff;
        } elseif (
    $daynow $gebday 0) {
          
    $age $yeardiff;
        } else {
          
    $age $yeardiff 1;
        }  
      } else {
        
    $age $yeardiff 1;
      }
      return 
    $age;
    }
    Das funzt aber net so wirklich... vllt. hat ja jemand ne bessere lösung

    in SQL hab ich des schnell gelöst.. brauch des aber in PHP.. ;)

    Gruß
     
  2. Anzeige

    schau dir mal diesen Ratgeber an. Dort findet man viele Hilfestellungen.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren.
  3. Odious

    Odious Erfahrener Benutzer

    Dabei seit:
    09.03.2007
    Beiträge:
    2.305
    Zustimmungen:
    0
    probiers mal hiermit:

    PHP:
    function alter_in_jahren($datum) {
       list(
    $tag$monat$jahr) = explode('.'$datum);
       if (
    $jahr <= date('y')) {
             
    $jahr += 2000;
          } elseif (
    $jahr 100) {
             
    $jahr += 1900;
          }
          
    $alter date('Y') - $jahr;
          if((
    $monat date('m')) || (($monat == date('m')) && ($tag date('d')))) $alter--;
          return 
    $alter;
    }
    Und jetzt reparier mal den PC-Heaven. Ich halts nicht mehr aus^^

    EDIT:
    Musst halt noch ein wenig anpassen
    PHP:
    list($tag$monat$jahr) = explode('.'$datum);
    wird zu
    PHP:
    list($jahr$monat$tag) = explode('-'$datum);
    Dann kannst aber den Teil, wo 2000 bzw. 1900 addiert wird auch weglassen^^
    Damits mit der Art von MySQL zurecht kommt :D
     
  4. Nico

    Nico Ehemaliges Teammitglied

    Dabei seit:
    28.10.2005
    Beiträge:
    6.676
    Zustimmungen:
    0
    Hmm ich habs jetz mit list() überarbeitet [wie kann ich nur au fsone funktion net kommen?^^] und herausgekommen isch des hier

    PHP:
    function get_age($mysql_date) {
      
    //Variablen umformen
      
    list($gebyear$gebmonth$gebday) = explode("-"$mysql_date);
      list(
    $yearnow$monthnow$daynow) = explode("-"date("Y-m-d"));
      
    //Normales Alter
      
    $yeardiff $yearnow $gebyear;

      if (
    $monthnow $gebmonth]) {
        
    //Der Benutzer hatte scho in nem verg. Monat Geb
        
    $age $yeardiff;
      } 
      elseif (
    $monthnow $gebmonth) {
        
    //Der User hatte noch net.. und hat au net in diesem monat
        
    $age $yeardiff 1;
      } else {
        
    //Der User hat in diesem Monat..
        
    if ($daynow $gebday) {
          
    //Sein Geburtstag liegt scho zur&uuml;ck
          
    $age $yeardiff;
        } 
        elseif (
    $daynow $gebday) {
          
    //Sein Geburtstag steht noch bevor... Hoffentlich viele geschenke^^
          
    $age $yeardiff 1;
        } else {
          
    //Der User hat ja heute Geburtstag!^^
          
    $age $yeardiff;
        }
      }
      return 
    $age;
    }
     
  5. #4 threadi, 29.12.2007
    threadi

    threadi Erfahrener Benutzer

    Dabei seit:
    16.04.2006
    Beiträge:
    289
    Zustimmungen:
    0
  6. Nico

    Nico Ehemaliges Teammitglied

    Dabei seit:
    28.10.2005
    Beiträge:
    6.676
    Zustimmungen:
    0
    in SQL hätt ichs scho ghabt^^

    Des beispiel war aber mitten in ner anderen Abfrage.. und irgendwann geht da die übresicht kaputt^^ mit der funktion gehts daher für meine zwecke besser find ich
     
Thema: Alter berechnen anhand MySQL "DATE"
Besucher kamen mit folgenden Suchen
  1. mysql alter berechnen

    ,
  2. mysql datum rechnen

    ,
  3. mysql date rechnen

    ,
  4. php mysql alter berechnen,
  5. alter berechnen mysql,
  6. mysql date alter berechnen,
  7. mysql alter aus datum berechnen,
  8. mysql alter errechnen,
  9. mysql tage bis geburtstag berechnen,
  10. php mysql datum rechnen,
  11. mysql geburtsdatum alter berechnen,
  12. mysql date berechnen,
  13. alter anhand geburtsdatum berechnen,
  14. alter in tagen aus mysql,
  15. sql alter berechnen mysql,
  16. sql abfrage alter berechnen,
  17. alter anhand geburtsdatum errechnen ,
  18. mysql alter von geburtsdatum,
  19. mysql alter bestimmen,
  20. mysql alter anhand von geb datum errechnen,
  21. php mysql alter,
  22. www.modern-altern,
  23. sql alter anhand eines datums berechnen,
  24. MSSQL Alter berechnen,
  25. sql alter berechnen anhand von geburtstag
Die Seite wird geladen...

Alter berechnen anhand MySQL "DATE" - Ähnliche Themen

  1. Altes PC Spiel startet nicht

    Altes PC Spiel startet nicht: Hallo, ich habe mir das Spiel "Youngstars Fussballmanager" online bestellt. Als das Spiel endlich angekommen ist, wollte ich es natürlich direkt...
  2. Alte Spiele

    Alte Spiele: Hallo, ich habe Myst mal wieder ausgekramt und wollte es wieder in Gang kriegen. Hab es erst mit dem Kompatibilitätsmodus versucht - erfolglos....
  3. Neue Maus, alte von der Katze gefressen

    Neue Maus, alte von der Katze gefressen: Hey, ich bin auf der Suche nach einer neuen Maus. Natürlich einer Computermaus :D Das mit der Katze war natürlich nur ein Scherz. Meine alte ist...
  4. Alte Daten auf Festplatte im Netzwerk löschen?

    Alte Daten auf Festplatte im Netzwerk löschen?: Guten Morgen zusammen, ich habe aus meinem alten Notebook die Festplatte in ein externes Gehäuse verbaut und diese an meinen Router gehangen....
  5. Alten PC hochrüsten - auftakten? - Welche Teile kaufen? CPU oder Arbeitsspeicher?

    Alten PC hochrüsten - auftakten? - Welche Teile kaufen? CPU oder Arbeitsspeicher?: Hallo Leute. Ich habe meinen PC vor 6 Jahren beim Hardwareversand (gibts die nicht mehr?) gekauft. Heute möchte ich den PC etwas schneller...