IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Affichage de l'âge d'un membre à partir de sa date de naissance


Sujet :

PHP & Base de données

  1. #1
    Membre régulier Avatar de menoulette
    Inscrit en
    Août 2009
    Messages
    320
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 320
    Points : 111
    Points
    111
    Par défaut Affichage de l'âge d'un membre à partir de sa date de naissance
    Resalut,
    Je souhaite afficher l'âge d'un membre à partir de sa date de naissance!pour cela j'ai utilisé une fonction qui calcule l'age en lui entrant comme paramètre la date de naissance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
     
     
     
     
    	<?php 
    	$req= mysql_query("SELECT sexe,date_naissance FROM utilisateur WHERE pseudo='" . mysql_real_escape_string($_SESSION['login']) . "'");
    	$repo=mysql_fetch_array($req);
     
    	echo ' 
    	<BR><FONT COLOR=RED>SEXE:</FONT>'.$repo['sexe'];
    	echo'<BR><FONT COLOR=RED>DATE DE NAISSANCE:</FONT COLOR>'.$repo['date_naissance'];
    	//calcule de l'age
    	$date_naiss=$repo['date_naissance'];
    	function Age($date_naissance)
    {
        $arr1 = explode('/', $date_naissance);
        $arr2 = explode('/', date('d/m/Y'));
     
        if(($arr1[1] < $arr2[1]) || (($arr1[1] == $arr2[1]) && ($arr1[0] <= $arr2[0])))
        return $arr2[2] - $arr1[2];
        return $arr2[2] - $arr1[2] - 1;
    }
     
    	$age=Age($date_naiss); echo '('.$age.'ans).';?>
    est là ca m'affiche
    Notice: Undefined offset: 1 in C:\Program Files\EasyPHP 2.0b1\www\monsite\dossier special\mon_profile.php on line 243

    Notice: Undefined offset: 2 in C:\Program Files\EasyPHP 2.0b1\www\monsite\dossier special\mon_profile.php on line 244

    (2009ans).
    que dois-je faire??
    Merci

  2. #2
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 476
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 476
    Points : 4 687
    Points
    4 687
    Par défaut
    salut,

    je t'ai bricole une fonction vite fait...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    function Age($date_naissance)
    {
     $age=0;
     $jourNais=substr($date_naissance, 0, 2);
     $moiNais=substr($date_naissance, 3, 2);
     $anNais=substr($date_naissance, 6, 4);
     $jour=date('d');
     $moi=date('m');
     $annee=date('Y');
     $age=$annee-$anNais;
      if($moiNais<$moi)
       $age++;
      elseif($moiNais==$moi)
      {
        if($jourNais<=$jour)
         $age++;
       }
    return $age;
    }
    echo Age("01/08/2008").' ans';
    il y a surment une autre facon plus jolie et optimisee... mais ca te depannera

    edit : correction du code

  3. #3
    Membre régulier Avatar de menoulette
    Inscrit en
    Août 2009
    Messages
    320
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 320
    Points : 111
    Points
    111
    Par défaut
    Re,
    Merci mais!!éééh oui y'a toujours des surprises pour moi!!maintenant y'a plus d'erreur mais y'a (2008) ans je ne comprends pas pourquoi??

  4. #4
    Expert confirmé
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 476
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 476
    Points : 4 687
    Points
    4 687
    Par défaut
    bah, je ne sais pas... la date passee en parametre est-elle correcte ?
    (je suis sous WAMP5, PHP 5+)

  5. #5
    Membre régulier Avatar de menoulette
    Inscrit en
    Août 2009
    Messages
    320
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 320
    Points : 111
    Points
    111
    Par défaut
    ahh oui c vrai elle est de cette forme la date y/m/d
    je crois que c'est ca le prblm

Discussions similaires

  1. [Débutant] Calculer l'âge à partir de la date de naissance
    Par kamalGLM dans le forum VB.NET
    Réponses: 14
    Dernier message: 24/03/2015, 10h10
  2. Calculer L'age Exacte a partir de la date de naissance
    Par zoubazouba40 dans le forum Général Java
    Réponses: 3
    Dernier message: 07/02/2014, 19h01
  3. Réponses: 3
    Dernier message: 19/03/2009, 12h51
  4. Age à partir d'une date de naissance
    Par NABIL74 dans le forum Bases de données
    Réponses: 6
    Dernier message: 29/01/2009, 12h43
  5. Requete a partir d'une date de naissance pour obtenir un age
    Par Fleur-Anne.Blain dans le forum Langage SQL
    Réponses: 11
    Dernier message: 10/08/2006, 12h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo