Bonjour,
Je suis en trein de créer un site d'élevage virtuel de dinosaure
En fait, le dinosaure doit augmenter sa force. Il a déjà un nombre de force dans $_SESSION['force'];
Et quand l'utilisateur achète de la force et en utilise disons 10, ça fait ceci : $_SESSION['force']+10; puis il y a l'uptade de la base de donnée my sql (phpmyadmin)
Mais quand l'utilisateur va dans la page mon dino qui affiche le nombre de force de l'utilisateur, il n'affiche pas les 10 en plus. J'ai été dans phpmyadmin et j'ai vérifié que ça avait bien mis à jour la bd. C'est OK.
Puis j'ai découvert qu'il fallait détruire la session puis se reconnecter pour que les utilisateurs voient le changement.
La force s'affiche comme ceci : <?php echo $_SESSION['force']; ?>
J'ai mis ceci dans la page :
<?php require_once('configure/connexion.php');
session_start(); // On relaye la session
if (session_is_registered("authentification")){ }
else {
header("Location:erreur.php?erreur=intru");
}
?>
Voici la page de connexion :
<?php require_once('configure/connexion.php'); ?>
<?php
session_start(); // début de session
if (isset($_POST['login'])){ // execution apres envoi du formulaire
$login = $_POST['login']; // mise en variable du nom d'utilisateur
$pass = md5($_POST['pass']); // mise en variable du mot de passe crypté
// requete sur la table administrateurs (on récupère les infos de la personne)
mysql_select_db($database, $lien);
$verif_query=sprintf("SELECT * FROM utilisateurs WHERE login='$login' AND pass='$pass'"); // requête sur la base administrateurs
$verif = mysql_query($verif_query, $lien) or die(mysql_error());
$row_verif = mysql_fetch_assoc($verif);
$utilisateur = mysql_num_rows($verif);
if ($utilisateur) { // On test s'il y a un utilisateur correspondant
session_register("authentification"); // enregistrement de la session
$id_user = $row_verif['id_user'];
//-------------------------------------FIN ENREGISTREMENT DE LA CONNEXTION----------------------------------------------------
if ($row_verif['statuts'] == 1){
header("Location:connexion.php?erreur=session_bloquer"); // redirection si utilisateur si session bloquer
}
elseif($row_verif['statuts'] == 3){
header("Location:connexion.php?erreur=session_non_valider"); // redirection si utilisateur session non valider
}
else{
// déclaration des variables de session
$_SESSION['id_user'] = $id_user;
$_SESSION['login'] = $row_verif['login']; // Son Login
$_SESSION['pass'] = $row_verif['pass']; // Son mot de passe (à éviter)
$_SESSION['privilege'] = $row_verif['privilege']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['dino'] = $row_verif['dino']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['clan'] = $row_verif['clan']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['nom_dino'] = $row_verif['nom_dino']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['prenom'] = $row_verif['prenom']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['nom'] = $row_verif['nom']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['niveau'] = $row_verif['niveau']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['force'] = $row_verif['force']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['endurance'] = $row_verif['endurance']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['pv'] = $row_verif['pv']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['xp'] = $row_verif['xp']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['mana'] = $row_verif['mana']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['intelligence'] = $row_verif['intelligence']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['vitesse'] = $row_verif['vitesse']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['techn'] = $row_verif['techn']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['equilibre'] = $row_verif['equilibre']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['mail'] = $row_verif['mail']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['message'] = $row_verif['message']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['msn'] = $row_verif['msn']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['tel'] = $row_verif['tel']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['gsm'] = $row_verif['gsm']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['dragon'] = $row_verif['dragon']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['iles'] = $row_verif['iles']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['koyo'] = $row_verif['koyo']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['jopling'] = $row_verif['jopling']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['ufo'] = $row_verif['ufo']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['midword'] = $row_verif['midword']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['moloke'] = $row_verif['moloke']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['cdd'] = $row_verif['cdd']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['statuts'] = $row_verif['statuts'];
$_SESSION['metier'] = $row_verif['metier']; // le privilège de l'utilisateur (permet de définir des niveaux d'utilisateur)
$_SESSION['emeraude'] = $row_verif['emeraude'];
$_SESSION['bariere_secur'] = $row_verif['bariere_secur'];
$_SESSION['camera_secur'] = $row_verif['camera_secur'];
$_SESSION['mitrailleuse_secur'] = $row_verif['mitrailleuse'];
$_SESSION['mine_secur'] = $row_verif['mine_secur'];
$_SESSION['alarme_secur'] = $row_verif['alarme_secur'];
$_SESSION['cesar_secur'] = $row_verif['cesar_secur'];
$_SESSION['canon_secur'] = $row_verif['canon_secur'];
$_SESSION['coussin_conf'] = $row_verif['coussin_conf'];
$_SESSION['assiette_conf'] = $row_verif['assiette_conf'];
$_SESSION['refrigerateur_conf'] = $row_verif['refrigerateur_conf'];
$_SESSION['baignoir_conf'] = $row_verif['baignoir_conf'];
$_SESSION['brossedent_conf'] = $row_verif['brossedent_conf'];
$_SESSION['nestor_conf'] = $row_verif['nestor_conf'];
$_SESSION['magik_conf'] = $row_verif['magik_conf'];
$_SESSION['pierre_arme'] = $row_verif['pierre_arme'];
$_SESSION['lance_arme'] = $row_verif['lance_arme'];
$_SESSION['arbalete_arme'] = $row_verif['arbalete_arme'];
$_SESSION['fusil_arme'] = $row_verif['fusil_arme'];
$_SESSION['lunette_arme'] = $row_verif['lunette_arme'];
$_SESSION['bazooka_arme'] = $row_verif['bazooka_arme'];
$_SESSION['soif'] = $row_verif['soif'];
$_SESSION['faim'] = $row_verif['faim'];
$_SESSION['malade'] = $row_verif['malade'];
$_SESSION['poid'] = $row_verif['poid'];
$_SESSION['taille'] = $row_verif['taille'];
$_SESSION['point'] = $row_verif['point'];
$_SESSION['bariere'] = $row_verif['bariere'];
$_SESSION['mine'] = $row_verif['mine'];
$_SESSION['cesar'] = $row_verif['cesar'];
$_SESSION['canon'] = $row_verif['canon'];
$_SESSION['mitrailleuse'] = $row_verif['mitrailleuse'];
$_SESSION['alarme'] = $row_verif['alarme'];
$_SESSION['camera'] = $row_verif['camera'];
$_SESSION['assiette'] = $row_verif['assiette'];
$_SESSION['coussin'] = $row_verif['coussin'];
$_SESSION['baignoir'] = $row_verif['baignoir'];
$_SESSION['refrigerateur'] = $row_verif['refrigerateur'];
$_SESSION['brossedent'] = $row_verif['brossedent'];
$_SESSION['magik'] = $row_verif['magik'];
$_SESSION['nestor'] = $row_verif['nestor'];
$_SESSION['pierre'] = $row_verif['pierre'];
$_SESSION['lance'] = $row_verif['lance'];
$_SESSION['arbalete'] = $row_verif['arbalete'];
$_SESSION['fusil'] = $row_verif['fusil'];
$_SESSION['lunette'] = $row_verif['lunette'];
$_SESSION['bazooka'] = $row_verif['bazooka'];
$_SESSION['trousse'] = $row_verif['trousse'];
$_SESSION['1force'] = $row_verif['1force'];
$_SESSION['1agilite'] = $row_verif['1agilite'];
$_SESSION['1endurence'] = $row_verif['1endurence'];
$_SESSION['1intelligence'] = $row_verif['1intelligence'];
$_SESSION['1vol'] = $row_verif['1vol'];
$_SESSION['1nage'] = $row_verif['1nage'];
$_SESSION['1poisson'] = $row_verif['1poisson'];
$_SESSION['1crabe'] = $row_verif['1crabe'];
$_SESSION['1hippocampe'] = $row_verif['1hippocampe'];
$_SESSION['sexe'] = $row_verif['sexe'];
$_SESSION['date_ouverture'] = $row_verif['date_ouverture'];
$_SESSION['nb_parain'] = $row_verif['nb_parain'];
$_SESSION['age'] = $row_verif['age'];
$_SESSION['nb_soutien'] = $row_verif['nb_soutien'];
$_SESSION['pourcents'] = $row_verif['pourcents'];
$_SESSION['id_connex'] = $id_connextion; //enregistrement de l'id de conexion (compteur)
$_SESSION['variable_divers'] = null; //permet de stocker une variable!!
//ouverture de la page d'accueil avec pop up
/*print " <script>
fs=window.open('','','resizable,scrollbars=auto');
fs.blur();
fs.resizeTo(screen.width,screen.height);
fs.moveTo(0,0);
fs.location= 'page_acc.php';
fs.focus();
</script>"; */
header("Location:page_acc.php"); // redirection si OK //sans pop up
}
}
else {
header("Location:connexion.php?erreur=login"); // redirection si utilisateur non reconnu
}
}
// GESTION DE LA Déconnexion
?>
<html>
<head>
<title><?php print $nom_prog ?></title>
<style type="text/css">
<!--
.Style2 {color: #0000FF}
.Style5 {color: #FF0000}
.Style6 {font-family: Verdana, Arial, Helvetica, sans-serif}
.Style7 {font-size: 12px}
.Style10 {
font-size: 14px;
font-weight: bold;
}
-->
</style>
</head>
<body background="fichier_images/texture2.jpg">
<form action="" method="post" name="connect" class="Style6">
<p align="center" class="Style7"><strong>
<?php //------------- message d'erreur ------------------------------------- ?>
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "login")) { // Affiche l'erreur ?>
<span class="Style5">Echec d'authentification !!!<br> login ou mot de passe incorrect</span> <?php } ?>
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "session_bloquer")) { // Affiche l'erreur ?>
<span class="Style5">Impossible de se connecter. Vous avez ete banni par un administrateur ou un operateur.</span> <?php } ?>
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "session_non_valider")) { // Affiche l'erreur ?>
<span class="Style5">Echec : cette session n'a pas été validé</span> <?php } ?>
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "delog")) { // Affiche l'erreur ?>
<span class="Style2">Déconnexion réussie... A bientôt !</span> <?php } ?>
<?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "intru")) { // Affiche l'erreur ?>
<span class="Style5">Echec d'authentification !!! > Aucune session n'est ouverte</span>
<span class="Style5">ou vous n'avez pas les droits pour afficher cette page </span>
<?php } ?>
<?php //---------------message validation session------------------------- ?>
<?php if(isset($_GET['session']) && ($_GET['session'] == "valide")) { // Affiche validation de session ?>
<span class="Style2">Votre session est maintenant activé !!</span> <?php } ?>
<?php if(isset($_GET['session']) && ($_GET['session'] == "erreur_validation")) { // Affiche validation de session ?>
<span class="Style5">Erreur lors de la validation de la session</span> <?php } ?>
<?php if(isset($_GET['session']) && ($_GET['session'] == "erreur_duree")) { // Affiche validation de session ?>
<span class="Style5">Erreur : la durée pour valider cette session a été dépassé
<br> Merci de recommencer votrre inscription</span> <?php } ?>
<?php if(isset($_GET['session']) && ($_GET['session'] == "erreur_non_existant")) { // Affiche validation de session ?>
<span class="Style5">Erreur : session non existante</span> <?php } ?>
</strong></p>
<center><h2><?php print $nom_prog ?></h2></center>
<div align="center" class="Style7">
<table width="300" border="1" cellpadding="0" cellspacing="0" >
<tr>
<td><table width="400" border="0" cellpadding="10" cellspacing="0" background="fichier_images/texture1.jpg">
<tr>
<td width="50%"><span class="Style7">LOGIN</span></td>
<td width="50%"><input name="login" type="text" id="login"></td>
</tr>
<tr>
<td width="50%"><span class="Style7">MOT DE PASSE </span></td>
<td width="50%"><input name="pass" type="password" id="pass"></td>
</tr>
<tr>
<td height="34" colspan="2"><div align="center">
<input type="submit" name="Submit" value="Se connecter">
</div></td>
</tr>
</table></td>
</tr>
</table>Pour vous connecter à <?php print $nom_prog ?>, votre navigateur doit autoriser les pop up<br>
<br>
<br><a href="admin_utilisateur/inscription.php"><u><b>S'INSCRIRE A L'ESPACE MEMBRE</u></b></a>
<br><a href="admin_utilisateur/mdp_perdu.php3"><u><b>Mot de passe perdu ???</u></b></a>
<br><a href=" http://www.cdd-pro.com/contact/"><u><b>Contacter l'admin</u></b></a>
<br>
<br>
<br>
</form>
</body>
</html>
Voilà la page configure.php :
<?php
// paramètres de connexion
$hostname = "localhost"; // nom de votre serveur
$database = "cdd_dinolife"; // nom de votre base de données
$username = "cdd_dinolife"; // nom d'utilisateur (root par défaut) !!! ATTENTION, en utilisant root, vos visiteurs on tout les droits sur la base
$password = "*********"; // mot de passe (aucun par défaut mais il est conseillé d'en mettre un)
$lien = mysql_pconnect($hostname, $username, $password) or trigger_error(mysql_error(),E_USER_ERROR);
//$lien = $dbprotect; $database_dbprotect
$nb_jours_validation_session_internaute = 7; //nombre de jour pour valider une session par l'internaute
$nom_prog = "DinoLife : Jeu virtuel d'élevage de dinosaure gratuit";
$nom_domaine = " http://dinolife.cdd-pro.com/nouveau_dinolife ";
$non_societe = "CDD";
$e_mail = " cdd@cdd-pro.com ";
#################################################################################################
# Ne pas modifier les variable suivante
###################################################################################################
$nb_jours_val_session = $nb_jours_validation_session_internaute * 24 * 3600;
?>
Et maintenant la page de deconnexion :
<?php require_once('configure/connexion.php'); ?>
<?php
session_start();
session_unset("authentification");
header("Location:index.php");
?>
Et la page où doit s'afficher la force :
<?php require_once('configure/connexion.php'); ?>
<?php
session_start(); // On relaye la session
if (session_is_registered("authentification")){ // vérification sur la session authentification (la session est elle enregistrée ?)
// ici les éventuelles actions en cas de réussite de la connexion
}
else {
header("Location:erreur.php?erreur=intru"); // redirection en cas d'echec
}
?>
<html>
<head>
<title>DinoLife : Mon dino</title>
<LINK href="dinolife.css"
type=text/css rel=stylesheet>
</head>
<body>
<?php
$energie = $mana;
$vie = $pv;
$experience = $xp;
$niveau = $niveau;
$force = $force;
$technique = $techn;
$intelligence = $intelligence;
$equilibre = $equilibre;
$endurance = $endurance;
$vitesse = $vitesse;
?>
<h2 class="style3">
Mon dino</h2>
<table border="0" style="width: 662px; height: 260px;">
<tr>
<td style="vertical-align:middle;" class="style1">
<img src="tabpane/alosaure10.jpg" name="img_dino" id="img_dino"
style="vertical-align:middle; height: 269px; width: 375px;" />
</td>
<td valign="top" class="style2" background="texure.png">
<div id="fiche_dino">
<div id="fiche_dino_intitules">
<div id="fiche_dino_intitule">
<h1 style="height: 29px; text-align: center; margin-bottom: 3px;">
<span class="style8"> </span> <span class="style4"> <span
class="style7">Allosaure</span></span><br class="style7" />
</h1>
<span class="style10">Nom :<?php echo $nom_dino; ?></a></span></div>
<b><span class="style6">Sexe : <?php echo $sexe; ?></a></span></b></div>
<b><span class="style6">Clan : <?php echo $clan; ?></a></span></b></div>
<div><b><span class="style6">Niveau : <?php echo $niveau; ?></span></b></div>
<div><b><span class="style6">Date d'inscription : <?php echo $date_ouverture; ?>
</span></b> </div>
<div><b><span class="style6">Âge : <?php echo $age_dino; ?></span></b></div>
<div><b><span class="style6">Poids : <?php echo $poid; ?></span></b></div>
<div><b><span class="style6">Taille : <?php echo $taille; ?></span></b></div>
<div><b><span class="style6">Points : <?php echo $point; ?></span></b></div>
<div><b><span class="style6">Nombre de fois parain : <?php echo $parain; ?></span></b></div>
<div><b><span class="style6">Soutien : <?php echo $soutien; ?></span></b></div>
<div><b><span class="style6">% du jeu terminés : <?php echo $pourcents; ?> %</span></b></div>
</div>
</div>
</tr>
</table>
<h2 class="style3">
</h2>
<table class="style11">
<tr>
<td class="style12">
<h2 class="style3">
Competence</h2>
</td>
<td class="style13">
Vous êtes au dernier niveau de DinoLife</td>
</tr>
</table>
<table class="style11" border="#000000" style="border-color: #000000" with="662px">
<tr style="border-color: transparent">
<td class="style15">
<b>Niveau :</b>
<?php echo $niveau; ?></td>
<td class="style23"><div id="barre_c"><img class="barre" style="border-color: #000000" height=13
src="loadbar.png"
width=<?php echo intval($niveau/10*465);?>></div>
</td>
</tr>
<tr style="border-color: transparent">
<td class="style16">
Vie :<span class="style17">
<?php echo $pv; ?>/100</span></td>
<td class="style14">
<div id="barre_c"><img class="barre" style="border-color: #000000" height=13
src="loadbar1.jpg"
width=<?php echo intval($vie/100*465);?>></div></td>
</tr>
<tr style="border-color: transparent">
<td class="style21">
Energie : <span class="style17" /><?php echo $mana; ?>/100</span></td>
<td class="style22">
<div id="barre_c"><img class="barre" style="border-color: #000000" height=13
src="loadbar3.bmp"
width=<?php echo intval($energie/100*465);?>></div></td>
</tr>
<tr style="border-color: transparent">
<td class="style28">
</td>
<td class="style22">
</td>
</tr>
<tr style="border-color: transparent">
<td class="style18">
Force :<span class="style17"> <?php echo $force; ?>/16900</span></td>
<td>
<div id="barre_c"><img class="barre" style="border-color: #000000" height=13
src="loadbar4.png"
width=<?php echo intval($force/16900*465);?>></div></td>
</tr>
<tr style="border-color: transparent">
<td class="style21">
Technique :<span class="style17"> <?php echo $techn; ?>/17000</span></td>
<td>
<div id="barre_c"><img class="barre" style="border-color: #000000" height=13
src="loadbar4.png"
width=<?php echo intval($technique/17000*465);?>></div></td>
</tr>
<tr style="border-color: transparent">
<td class="style36">
Endurance :<span class="style17"> <?php echo $endurance; ?>/16900</span></td>
<td class="style22">
<div id="barre_c"><img class="barre" style="border-color: #000000" height=13
src="loadbar4.png"
width=<?php echo intval($endurance/16900*465);?>></div></td>
</tr>
<tr style="border-color: transparent">
<td class="style16">
Equilibre :<span class="style17"> <?php echo $equilibre; ?>/16900</span></td>
<td class="style22">
<div id="barre_c"><img class="barre" style="border-color: #000000" height=13
src="loadbar4.png"
width=<?php echo intval($equilibre/16900*465);?>></div></td>
</tr>
<tr style="border-color: transparent">
<td class="style21">
Intelligence :<span class="style17"> <?php echo $intelligence; ?>/15500</span></td>
<td class="style22">
<div id="barre_c"><img class="barre" style="border-color: #000000" height=13
src="loadbar4.png"
width=<?php echo intval($intelligence/15500*465);?>></div></td>
</tr>
<tr style="border-color: transparent">
<td class="style16">
Vitesse :<span class="style17"> <?php echo $vitesse; ?>/16800</span></td>
<td class="style22">
<div id="barre_c"><img class="barre" style="border-color: #000000" height=13
src="loadbar4.png"
width=<?php echo intval($vitesse/16800*465);?>></div></td>
</tr>
<tr style="border-color: transparent">
<td class="style16">
</td>
<td class="style14">
</td>
</tr>
<tr style="border-color: transparent">
<td class="style16">
Expérience :<span class="style17"> <?php echo $xp; ?>/17000</span></td>
<td class="style22">
<div id="barre_c"><img class="barre" style="border-color: #000000" height=13
src="loadbar2.jpg"
width=<?php echo intval($experience/17000*465);?>></div></td>
</tr>
</table>
<table class="style11">
<tr>
<td class="style12">
<h2 class="style3">
</h2>
<h2 class="style3">
Etat</h2>
</td>
<td class="style13">
<br />
</td>
</tr>
</table>
<table class="style11" border="#000000" style="border-color: #000000" with="662px">
<tr style="border-color: transparent">
<td class="style32">
<img src="ok.gif" style="height: 15px; width: 14px"> </td>
<td class="style23">
</td>
</tr>
<tr style="border-color: transparent">
<td class="style33">
<img src="null.gif"> </td>
<td class="style35">
</td>
</tr>
<tr style="border-color: transparent">
<td class="style34">
</td>
<td class="style22">
</td>
</tr>
<tr style="border-color: transparent">
<td class="style34">
</td>
<td class="style22">
</td>
</tr>
</table>
</body>
</html>
Avez-vous une idée pour que les changements s'actualisent sans deconneixon -> connexion ?
Merci d'avance.
--------------------------------------
Cordialement, CDD
[ Lien ]