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

Langage PHP Discussion :

[Dates] calcul entre deux dates


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Par défaut [Dates] calcul entre deux dates
    Bonjour,

    C'est mon dernier jour de stage, et je dois faire une condition tel que si la date d'aujourd'hui est inférieur à 10 jours de la date du dépot d'un fichier, afficher un new,
    j'aimerai trouver une solution le plus vite possible, car on doit mettre mon projet en ligne aujourd'hui... et la fin de ma période se termine...

    Merci de me répondre, si vous pouvez.

    Ange Blanc 22

  2. #2
    Membre confirmé
    Inscrit en
    Mai 2004
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 201
    Par défaut
    Ben tu découpe ta date en bloc et tu les compare.

    explode() c pas mal

    Tes deux date doivent etre découpé en bloc.

    N'oubli pas aussi de gérer quand c le debut de moi.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Par défaut
    merci, merci !! beaucoup !! je viens de trouver ce script que j'ai mis pour moi :
    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
    				function NbJours($debut, $fin)
    				{
    				  $tDeb = explode("-", $debut);
    				  $tFin = explode("-", $fin);
    				  $diff = mktime(0, 0, 0, $tFin[1], $tFin[2], $tFin[0]) - 
    						  mktime(0, 0, 0, $tDeb[1], $tDeb[2], $tDeb[0]);
    				  return(($diff / 86400)+1);
    				}
    				$date_auj = date("Y-m-d");
    				$date_fichier = $donnee->datedepot;
    				// Comment apeler la fonction
    				$Nombres_jours =  NbJours($date_fichier, $date_auj);
    				// Affiche 2
    				echo $Nombres_jours;
    				if($Nombres_jours <= 10)
    				{
    					echo '<img src="images/new/icone_new_clignote.gif">';
    				}
    et ça a l'air de marcher. Je le met si ça interresse quelqu'un... en tout cas, ça fonctionne et vraiment merci ! C'est quand je demande de l'aide que je trouve ! alors que quand je demande rien je trouve pas !!!
    bonne journée

  4. #4
    Membre confirmé
    Inscrit en
    Mai 2004
    Messages
    201
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 201
    Par défaut
    Ben de rien

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    51
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 51
    Par défaut
    euhhh petit blem mais que je ne comprends pas :

    Fatal error: Cannot redeclare nbjours() (previously declared in C:\...\...\...\Dossiers.php:100) in C:\...\...\...\Dossiers.php on line 100

    en fait, j'ai mis la fonction dans une boucle :
    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
    25
    26
    27
    28
    29
    30
    			$req3 = new record($sql);
    			$req3 = pg_query("SELECT nomdoss FROM dossier WHERE nomprod = '$produit' ORDER BY nomdoss");
    			while($donnee3=pg_fetch_object($req3))
    			{
    				$dossier = $donnee3->nomdoss;
    				echo '<a href="Dossiers.php?produit='.$produit.'&nom='.$dossier.'" title="Pour supprimer le fichier." style="font-family:"comic sans ms", "Century Gothic", serif; font-size:small" onMouseOver="self.status="Petit curieux";return true;" onMouseOut="self.status=" ";return true;"><input type="image" alt="Fermer" title="Cliquer pour supprimer le fichier." src="images/croix_rouge_trans.jpg" onMouseOver=this.src="images/croix_fermer_rouge.gif" onMouseOut= this.src="images/croix_rouge_trans.jpg"></a> : <a href="Fichier.php?dossier='.$dossier.'" title="Pour voir les fichiers.">'.$dossier.'</a>';
    				$req4 = new record($sql);
    				$req4 = pg_query("SELECT fichier, datedepot FROM fichier, dossier WHERE fichier.numdoss = dossier.numdoss AND nomdoss = '$dossier'");
    				while($donnee4=pg_fetch_object($req4))
    				{
    					function NbJours($debut, $fin)
    					{
    					  $tDeb = explode("-", $debut);
    					  $tFin = explode("-", $fin);
    					  $diff = mktime(0, 0, 0, $tFin[1], $tFin[2], $tFin[0]) - 
    							  mktime(0, 0, 0, $tDeb[1], $tDeb[2], $tDeb[0]);
    					  return(($diff / 86400)+1);
    					}
    					$date_auj = date("Y-m-d");
    					$date_fichier = $donnee4->datedepot;
    					// Comment apeler la fonction
    					$Nombres_jours =  NbJours($date_fichier, $date_auj);
    					// Affichage du new si c'est moins de 10 jours de déposé.
    					if($Nombres_jours <= 15)
    					{
    						echo '   <img src="images/new/icone_new_clignote.gif">';
    					}
    				}echo '<br>';
     
    			}
    ça marche pour le premier mais pas pour les autres...

    au secours !!

  6. #6
    Membre confirmé Avatar de royto
    Homme Profil pro
    Développeur .Net & Web
    Inscrit en
    Mai 2005
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .Net & Web

    Informations forums :
    Inscription : Mai 2005
    Messages : 92
    Par défaut
    Essaye comme ca

    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
    25
    26
    27
    28
    29
    30
    31
    function NbJours($debut, $fin)
    {
    	  $tDeb = explode("-", $debut);
    	  $tFin = explode("-", $fin);
    	  $diff = mktime(0, 0, 0, $tFin[1], $tFin[2], $tFin[0]) - 
    	  mktime(0, 0, 0, $tDeb[1], $tDeb[2], $tDeb[0]);
    	  return(($diff / 86400)+1);
    }	
    	$req3 = new record($sql);
    			$req3 = pg_query("SELECT nomdoss FROM dossier WHERE nomprod = '$produit' ORDER BY nomdoss");
    			while($donnee3=pg_fetch_object($req3))
    			{
    				$dossier = $donnee3->nomdoss;
    				echo '<a href="Dossiers.php?produit='.$produit.'&nom='.$dossier.'" title="Pour supprimer le fichier." style="font-family:"comic sans ms", "Century Gothic", serif; font-size:small" onMouseOver="self.status="Petit curieux";return true;" onMouseOut="self.status=" ";return true;"><input type="image" alt="Fermer" title="Cliquer pour supprimer le fichier." src="images/croix_rouge_trans.jpg" onMouseOver=this.src="images/croix_fermer_rouge.gif" onMouseOut= this.src="images/croix_rouge_trans.jpg"></a> : <a href="Fichier.php?dossier='.$dossier.'" title="Pour voir les fichiers.">'.$dossier.'</a>';
    				$req4 = new record($sql);
    				$req4 = pg_query("SELECT fichier, datedepot FROM fichier, dossier WHERE fichier.numdoss = dossier.numdoss AND nomdoss = '$dossier'");
    				while($donnee4=pg_fetch_object($req4))
    				{
     
    					$date_auj = date("Y-m-d");
    					$date_fichier = $donnee4->datedepot;
    					// Comment apeler la fonction
    					$Nombres_jours =  NbJours($date_fichier, $date_auj);
    					// Affichage du new si c'est moins de 10 jours de déposé.
    					if($Nombres_jours <= 15)
    					{
    						echo '   <img src="images/new/icone_new_clignote.gif">';
    					}
    				}echo '<br>';
     
    			}
    en fait comme tu passe plusieurs fois dans ta boucle tu declares plusieurs fois ta fonction et comme il ne peux pas en avoir 2 avec le meme nom ==> plantage

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [phpMyAdmin] Comment vider une table entre deux dates ou entre deux id avec phpMyAdmin
    Par patrmich dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 6
    Dernier message: 24/05/2014, 14h48
  2. Calcul entre deux dates
    Par diegochile dans le forum Deski
    Réponses: 1
    Dernier message: 02/10/2008, 14h30
  3. [Date] Calcul entre deux dates
    Par djodjo dans le forum Collection et Stream
    Réponses: 7
    Dernier message: 14/09/2006, 14h32
  4. Réponses: 1
    Dernier message: 10/08/2006, 14h43
  5. Calcul entre deux dates heures
    Par Isa31 dans le forum Algorithmes et structures de données
    Réponses: 9
    Dernier message: 31/03/2005, 13h17

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