Système pour augmentater les PAs qui ne va pas :(

Petit nouveau ! | 8 Messages

19 mai 2006, 23:49

Bon voilà, je fais un système de PA où le maximum de PA est 70 et on en regagner un par demi heure.

J'ai fais ceci (code extrait) :
<?php 
session_start(); 
require('data.php'); 
//--------------------------
$time = time(); 
//--------------------------
$return = mysql_query("SELECT * FROM users WHERE pseudo='".$_SESSION['pseudo']."'") or die(mysql_error()); 
$users = mysql_fetch_array($return); 
$pa = $users['pa']; 
$pa_time = $users['pa_time']; 
$differnce_pa_time = $pa_time - $time; 
//--------------------------
if($difference_pa_time >= 1800)
{
        while($difference_pa_time >= 1800)
        {
                if($pa == 70)
                {
                        $differnce_pa_time = $differnce_pa_time - 1800; 
                }
                else
                {
                        $pa++; 
                        $differnce_pa_time = $differnce_pa_time - 1800; 
                }
        }
$_SESSION['pa'] = $pa; 
$pa_new_time = $time - $differnce_pa_time; 
mysql_query("UPDATE users SET pa='".$_SESSION['pa']."', pa_time='".$pa_new_time."' WHERE pseudo='".$_SESSION['pseudo']."'") or die(mysql_error()); 
}
?>

Voici un aperçu de la table :

Image


Le problème est que ça n'actualise pas les pa nii le timestamp.

Pouvez vous m'aider ? Merci :wink:

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

20 mai 2006, 14:38

Salut,

Est-ce que le résultat du calul est celui attendu ?
Est-ce juste un souci de requête ?

refait un essai sans les apostrophes pour les champs de type entier:
$sql="UPDATE users SET pa=".$_SESSION['pa'].", pa_time=".$pa_new_time." WHERE pseudo='".$_SESSION['pseudo']."'";

echo $sql; // test d'affichage

mysql_query($sql) or die(mysql_error()); 

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute