[PHP Mysql] probleme pour avoir la difference entre 2 dates.

probleme pour avoir la difference entre 2 dates. [PHP Mysql] - PHP - Programmation

Marsh Posté le 11-03-2004 à 16:07:16    

Bonjour,
 
J'ai un probleme pour faire une difference de date... dans une base mysql j'ai un champs last_connection qui reçoit mktime() a chaque login du joueur et quand je fais mktime()-last_connection il me sort un resultat enorme... je voudrais juste avoir le temps en seconde entre les deux connexion.  :??:  
 
Voici mon code ça sera plus facil (enfin j'espere) :

Code :
  1. <?php
  2. require_once ("parametre_bd.php" );
  3. require_once ("connexion.php" );
  4. $pseudo = ucfirst($_POST['pseudo']);
  5. $password = $_POST['password'];
  6. $resultat = mysql_query("SELECT * FROM `joueur` WHERE `pseudo` = '".$pseudo."'",$connexion);
  7. $sql = mysql_fetch_object($resultat);
  8. $verif_password = $sql->password;
  9. $date_ancienne = $sql->last_conection;
  10. if ($verif_password != $password) {
  11. echo '<CENTER><P class=historique>Mauvais password ou login.</P></CENTER>';
  12. include ('index.php');
  13. exit();}
  14. else {
  15. $dif_date = mktime() - $date_ancienne;
  16. $now=mktime();
  17. if ( $dif_date > 5 ) { 
  18.   mysql_query("UPDATE `joueur` SET `last_conection`='".$now."' WHERE `pseudo`='".$pseudo."';" ) or die ("Requête invalide" );
  19.   $sql_village = mysql_query("SELECT * FROM `villes` WHERE `pseudo` = '".$pseudo."'",$connexion);
  20.    while ( $row = mysql_fetch_assoc ( $sql_village ) ) {
  21.     $new_or = $row['or']+(( $row['paysan_or'] * $dif_date ) / 3600);
  22.     $new_bo = $row['bois']+(( $row['paysan_bois'] * $dif_date ) / 3600);
  23.     $new_no = $row['nourriture']+(( $row['paysan_nourriture'] * $dif_date ) / 3600);
  24.     mysql_query("UPDATE `villes` SET `bois`='".$new_bo."', `or`='".$new_or."', `nourriture`='".$new_no."' WHERE `nom`='".$row['nom']."';" ) or die ("Requête invalide" );
  25.    }
  26. }
  27. header("Location: http://127.0.0.1/nouvelles.php" );}
  28. ?>


 
J'ai deja regarde sur nexen mais je dois vraiment etre nul... :(  
PS : je sais c'est pas du tout W3C ...  :D

Reply

Marsh Posté le 11-03-2004 à 16:07:16   

Reply

Marsh Posté le 11-03-2004 à 16:31:09    

Bon ça fait 2h que je cherchais sans trouver alors je me resigne a poster une aide. et 1à minutes apres je trouve la solution... c'est mon champs last_conection dans mysql qui etait en format date au lieu de int...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed