:: Easy-Script.com :: Index du Forum

Votre bannière ici !

 FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres   Groupes d'utilisateursGroupes d'utilisateurs   S'enregistrerS'enregistrer 
 RSS : Les 20 dernières discussions des forums d'Easy-Script.nom RSS   ProfilProfil   Messages PrivésMessages Privés   ConnexionConnexion 

Poster un nouveau sujet  Répondre au sujet
pb avec soustraction de date
dexter


Inscrit le: 19 Mai 2006
Messages: 14
Répondre en citant
Bonjour

Voila je voulais savoir comment faire une soustraction de date.

J'ai un formulaire qui affhiche des informations à partir d'un certain temps :
depuis 3 jours, depuis 38 jours, depuis 98 jours.

Lorsque dans ma requette sql, je veux par exmple prendre les informations depuis 3 jours, je procede comme suit :
soit le champ dateinfo (type: Y-m-d), la date ou l'info à été posté, je fais donc :

$date_jour=date("Y-m-d");

$requette="Select....
from....
where ($date_jour-dateinfo)<=3" ;


Voila ça ne fonctionne tout simplement pas, est-ce qu'il faut peut-etre utiliser une fonction date en mysql (pour la date du jour), sinon d(ou peut provenir l'erreur

merci d'avance
Voir le profil de l'utilisateurEnvoyer un message privé
Redox
Modérateurs
Modérateurs

Inscrit le: 07 Sep 2004
Messages: 973
Répondre en citant
Salut,

Tout d'abord pour travailler avec les dates, il faudrait que tu utilises leur équivalent en timestamp, du style le script pour calculer l'écart entre deux dates:

PHP:
<?php 

// -- DATE 1 -- 
$date "22/10/1989"
$jour substr($date,0,2); // on récupère le jour 
$mois substr($date,3,2); // puis le mois 
$annee substr($date,6,4); // et l'annee ... 
// on aurait également pu plutot utiliser 
// list($jour,$mois,$annee) = explode("/",$date); 
// on transforme la date en timestamp 
$timestamp mktime(0,0,0,$mois,$jour,$annee); 

// -- DATE ACTUELLE -- 
// directement en timestamp. 
$maintenant time(); 

// -- CALCUL -- 
// on calcule le nombre de secondes d'écart entre les deux dates 
$ecart_secondes $maintenant $timestamp
// puis on tranforme en jours (arrondi inférieur) 
$ecart_jours floor($ecart_secondes / (60*60*24)); 
// enfin on affiche le résultat 
setlocale("LC_TIME""fr"); 
echo 
"$ecart_jours jours se sont écoulés depuis le ".strftime("%A %d %B %Y"); 

?>


Mais si tu travailles avec MySQL, il y a encore plus facile car MySQL te fournit les fonctions sur mesure ! Alors va voir du coté de DATEDIFF !

Voir le profil de l'utilisateurEnvoyer un message privé
Annonces && Topic Scooping
pb avec soustraction de date
Vous pouvez poster de nouveaux sujets dans ce forum
Vous pouvez répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum
Toutes les heures sont au format GMT + 2 Heures  
Page 1 sur 1  

  
  
 Poster un nouveau sujet  Répondre au sujet  


Powered by phpBB © 2001, 2002 phpBB Group
Traduction par : phpBB-fr.com
Design by Vjacheslav Trushkin
phpBB SEO

Anti Bot Question MOD - phpBB MOD against Spam Bots
Inscriptions / messages bloqués: 2642 / 609