Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/05/2007, 17h57   #1
Membre actif
 
Avatar de bigltnt
 
Inscription : mars 2007
Messages : 221
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mars 2007
Messages : 221
Points : 155
Points : 155
Par défaut [SQL] Ajouter une durée à une date et obtenir une date valide

Bonjour.

VOila mon problème. J'ai une date X, une durée Y et je voudrais après avoir fait la somme X+Y obtenir une date valide (c'est a dire pas de 30 février entre autre donc il faut que ca passe au checkdate() ).

Je ne sait pas trop comment faire, au début je voulais convertir ma date X et Y en timestamp pour faire l'addition, mais je n'y connais pas (encore ) grand chose avec la manipulation des dates.

Si vous pouvez me donner des pistes, des solutions (c'est sympa aussi les solutions lol :p ) ... je vous en remercie d'avance.

++
bigltnt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/05/2007, 19h16   #2
Membre Expert
 
Avatar de eric.pommereau
 
Homme ERIC POMMEREAU
Ingénieur intégration
Inscription : décembre 2004
Messages : 683
Détails du profil
Informations personnelles :
Nom : Homme ERIC POMMEREAU
Âge : 38
Localisation : France

Informations professionnelles :
Activité : Ingénieur intégration
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : décembre 2004
Messages : 683
Points : 1 294
Points : 1 294
Dans la FAQ quelques pistes:

Les dates: http://php.developpez.com/faq/index.php?rechercher=date
Calcul de différences: http://php.developpez.com/faq/index....ate_difference

@+
eric.pommereau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/05/2007, 22h02   #3
Membre confirmé
 
othmane bentalha
Inscription : mai 2006
Messages : 257
Détails du profil
Informations personnelles :
Nom : othmane bentalha
Âge : 25

Informations forums :
Inscription : mai 2006
Messages : 257
Points : 228
Points : 228
Bonjour,
Il existe des fonctions sql qui permettent d'ajouter à une date une durée, comme par exemple, DATE_ADD('date', INTERVAL durée)
Exemple
Code SQL :
1
2
 
SELECT DATE_ADD('2007-05-30', INTERVAL 1 DAY)
ça tout retournera
Tu peux au lieu de DAY utiliser MONTH YEAR SECOND HOUR MINUTE ...
J'ai trouvé cette fonction dans la rubrique Mysql et il en existe bsq d'autres très intéressantes qui réponderont à tes besoin.
Clique ici pour t'y rendre
othmane126 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/05/2007, 23h55   #4
Membre émérite
 
Avatar de viviboss
 
Inscription : août 2006
Messages : 943
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France, Gard (Languedoc Roussillon)

Informations forums :
Inscription : août 2006
Messages : 943
Points : 941
Points : 941
mktime() te permet de valider la date que tu veux, et est plutot simple à utiliser si tu comprends le truc....

----_> va faire un tour dans ler manuel, dans ma signature !!!!

Voici un exemple :

Code :
1
2
3
 
$date=mktime(0,0,0,02,30,2007); // Te renverras false
$date=mktime(0,0,0,05,15+2,2007); //Ajoute 2 jours : 17/05/2007
I y a plein d'exemples dans le manuel....
__________________
Veni Vidi Vici
-------------------------
Mes articles : developpez.com ou bien vbview.net
-------------------------
Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!!
Et aussi : --> pear_manual_fr.chm!!!

Ou encore : --> Les tutoriaux & cours PHP de Développez.com
-------------------------
viviboss est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/06/2007, 14h32   #5
Membre chevronné
 
Avatar de LeXo
 
Inscription : janvier 2004
Messages : 1 147
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : janvier 2004
Messages : 1 147
Points : 782
Points : 782
voila :

Code :
$dateexp=date("d m Y",mktime(date("d",$data['X']), date("m",$data['X']),date("Y",$data['X']), date("m"), date("d")+$data['duree'], date("Y")));
LeXo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/06/2007, 11h52   #6
Membre actif
 
Avatar de bigltnt
 
Inscription : mars 2007
Messages : 221
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : mars 2007
Messages : 221
Points : 155
Points : 155
OK merci bcp c'est ce que je voulais (désolé du retard, j'ai fais une petit pause pour taper mon rapport là). Merci à tous !
bigltnt est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/06/2007, 14h55   #7
Membre émérite
 
Avatar de viviboss
 
Inscription : août 2006
Messages : 943
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France, Gard (Languedoc Roussillon)

Informations forums :
Inscription : août 2006
Messages : 943
Points : 941
Points : 941
De rien, à plus
__________________
Veni Vidi Vici
-------------------------
Mes articles : developpez.com ou bien vbview.net
-------------------------
Et SURTOUT ne pas oublier la bible PHP : --> php_manual_fr.chm!!!
Et aussi : --> pear_manual_fr.chm!!!

Ou encore : --> Les tutoriaux & cours PHP de Développez.com
-------------------------
viviboss est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h04.


 
 
 
 
Partenaires

Hébergement Web