Afficher le nombre d'années entre deux dates

Résolu
ach32 Messages postés 47 Date d'inscription   Statut Membre Dernière intervention   -  
ach32 Messages postés 47 Date d'inscription   Statut Membre Dernière intervention   -
Salut à toute la famille et bon dimanche !
Je tiens d'abord à remercier tous les membres de ce groupe qui se peinent à lire nos préocupation et nous accorder de leur précieux temps pour nous répondre.

Aujourd'hui je viens avec une préocupation que certains on déjà certainement rencontrés et ont trouvés la solution.

En fait j'ai une table employe dans mysql dans la quelle il y a un champ DATE_EMBAUCHE, je voudrais que lors de l'affichage du tableau des employés,
je puisse prendre la date de mon système, là comparer avec la DATE_EMBAUCHE de l'employé et afficher plutot l'ancienneté en nombre d'années écoulées entre la date d'embauche et la date actuelle.

En faisant des recherches sur le net je suis tombé sur plusieur méthodes qui permettent de faire le décompte du nombre de jours ou d'année écoulés entre deux dates, mais le vrai casse tète c'est de trouver comment adapter celà à mon code que voici:

// Code qui permet de compter le nombre de jours entre deux dates.
				$date1 = "03-07-2017" ;
				$date2 = "23-07-2017" ;
				$date3 = strtotime($date1) ;
				$date4 = strtotime($date2) ;

				$nbre_joursTimeStamp = $date4 - $date3 ;
				$nbr_jr = $nbre_joursTimeStamp/86400 ; 







<tbody style=" font-size:11px;">				  
					<?php   
					$recuperation_des_employes = mysql_query(" SELECT * FROM employe ORDER BY NOMS_PRENOMS ASC");
					while( $result = mysql_fetch_object($recuperation_des_employes))
					{   		
					echo (" 
                        <tr>
							<td>".$result->ID_EMPLOYE."</td>
							<td>".$result->NOMS_PRENOMS."</td>
							<td>".$result->SEXE."</td>
							<td>".$result->MATRICULE."</td>
							<td>".$result->FONCTION."</td>
							<td>".$result->CATEGORIE."</td>
							<td>".$result->ECHELON."</td>
							"); ?>
							<td>		
							    <?php 										
									if (''.$result->ANCIENNETE.'' >= 1) {
										 echo '<div align="center" >'.'<font color=green>'.'<strong>'.$result->ANCIENNETE.'</strong>'.' An(s)'.'</font>'.'</div>';
									}
									elseif(''.$result->ANCIENNETE.'' < 1 ){
										echo '<div align="center" >'.'<font color=red>'.'<strong>'.$result->ANCIENNETE.'</strong>'.' An(s)'.'</font>'.'</div>' ;
									}
								?>														
							</td>																					
					<?php	echo ("	
							<td>".$result->SALAIRE_BRUT."  F. CFA</td>
							<td align=\"center\">".$result->DATE_EMBAUCHE."</td>
							<td align=\"center\" class=\"hidden-print\"><a title=\"Modifier\" style=\"color:#69c48d\" class=\"glyphicon glyphicon-edit \"  href=\"traitements/modification_empl.php?ID_EMPLOYE=".$result->ID_EMPLOYE."\" >Edit</a> </td>
							<td class=\"hidden-print\"><a title=\"Supprimer\" style=\"color:#f8747d\" class=\"glyphicon glyphicon-trash \" href=\"#\" onClick=\"confirme('".$result->ID_EMPLOYE."')\" >Supp</a> </td>
							<a type=\"hidden\" href=\"menu_employe.php?ID_EMPLOYE=".$result->ID_EMPLOYE."\" ></a>
							</tr>
                  <?php   "); 
					}  ?>
				</tbody>
				
		







Si vous pouvez m'aider à adapter celà à mon code, c'est que Dieu a écouté ma prière à l'eglise tout à l'heure...
Merci pour votre aide
A voir également:

1 réponse

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

1 - Tu utilises l'ancienne extension mysql .. considérée comme obsolète !
Je t'invite à passer à PDO ou Mysqli
https://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top

2 - Ensuite... il suffit de placer, DANS TA BOUCLE, le calcul ....
Par exemple
while( $result = mysql_fetch_object($recuperation_des_employes)){
     $nbr_jr = (strtotime($result->DATE_EMBAUCHE) - strtotime(date('Y-m-d H:i:s') ) /86400 ; 

   // le reste de ton code

}

0
ach32 Messages postés 47 Date d'inscription   Statut Membre Dernière intervention  
 
Merci beaucoup pour tes orientation Jordane, j'ai résolu le problème
en affichant l'ancienneté en Années, Mois, et en Jours.


<?php   
					$recuperation_des_employes = mysql_query(" SELECT * FROM employe ORDER BY NOMS_PRENOMS ASC");
					while( $result = mysql_fetch_object($recuperation_des_employes))
					{   
						$date_start = ($result->DATE_EMBAUCHE);
				        $date_stop = date("Y-m-d H:i:s") ;
						
						$date_start = new DateTime($date_start);
						$date_stop = new DateTime($date_stop);
						 
						$diff = $date_stop->diff($date_start);
						$jr = $diff->d ; $ms = $diff->m ;  $an = $diff->y ;
						//La suite du code
0