Page 1 sur 1

probleme de date

Posté : 10 janv. 2006, 14:41
par Invité
bonjour,

sur mon site le membre va s'abonner et si la transaction est correcte, j'affiche un message qui confirme jusqu'a quand son abonnement est valide. voici la partie du script en question ci dessous
<?
$seconde = date('s');
$Minute = date("i"); 
$Heure = date("H"); 
$Mois = date("m"); 
$Jour = date("d"); 
$Annee = date("Y"); 


$fin_allopass24 = date("Y-m-d H:i:s", mktime($Heure, $Minute, $seconde, $Mois, $Jour+1, $Annee)); 

mysql_query("UPDATE membres SET fin_abonn='$fin_allopass24' WHERE pseudo='".$_SESSION["pseudo"]."'") or die (mysql_error()) ;

$fin_abonn_date = date('Y-m-d',$fin_allopass24);
$fin_abonn_heure = date('H:i:s',$fin_allopass24);
?>
Félicitation,<BR><BR>
Votre transaction c'est déroulé sans problemes, il prendra fin le <? echo $fin_abonn_date; ?> à <? echo $fin_abonn_heure; ?>
le probleme est que sur la page de confirmation je voie ceci:
Félicitation,

Votre transaction c'est déroulé sans problemes, il prendra fin le 1970-01-01 à 01:33:26
quelq'un aurais il une idée de l'origine de ce probleme?

Posté : 10 janv. 2006, 14:47
par iclo
1/1/1 1970 à 0h00 est la date de référence pour les timestamp. Il faut donc croire que tu as une valeur de 0 dans la variable que tu utilises pour la "construction" de la date fin.

Tu utilises une date comme variable pour construire une autre date, ce qui pose problême.

Posté : 10 janv. 2006, 14:51
par Invité
$fin_allopass24 est tout à fait correct

ce qui pose probleme est ci dessous mais je l'avais déjà fait et ca fonctionnais c'est pour ca que je ne comprend pas pourquoi ca ne marche pas.

$fin_abonn_date = date('Y-m-d',$fin_allopass24);
$fin_abonn_heure = date('H:i:s',$fin_allopass24);

Posté : 10 janv. 2006, 15:22
par Cyrano
À quelle valeur correspond ta variables $fin_allopass24 ?

Posté : 10 janv. 2006, 15:32
par Invité
si le membre renouvelle son abonnement aujourd'hui à 14h30 la valeur de $fin_allopass24 correspondra à 2006-01-11 14:30:00

Posté : 10 janv. 2006, 15:35
par iclo
cfr la doc php sur la fonction date :
http://php.belnet.be/manual/fr/function.date.php

Posté : 10 janv. 2006, 15:46
par Invité
j'ai beau chercher dans la doc ça ne m'avance en rien...

Posté : 10 janv. 2006, 15:51
par Cyrano
Pourtant... le second paramètre de date() doit être un timestamp et non une date formatée, regarde un peu plus bas dans la même page de la doc, tu as des exemples.