par
DrEAM's » 13 juil. 2008, 03:27
oui c'est bien un session_start()
Voilà les codes sources des deux pages concernés:
PS: désoler ça fait un petit peu brouillon :s
<?php
require('config.php');
session_start(); // On relaye la session
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Boutique <?php echo $nom_serveur ?></title>
<link href="style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.Style2 {font-weight: bold; color: #000000;}
.Style3 {
color: #0000FF;
font-weight: bold;
}
.Style4 {
color: #FF9966;
font-weight: bold;
}
.Style9 {color: #FF3333; font-weight: bold; }
-->
</style>
</head>
<!--Debut CSS - http://www.jejavascript.net/ //-->
<link rel="stylesheet" href="./style.css" type="text/css">
<!--Fin CSS - http://www.jejavascript.net/ //-->
<center><body>
<body onselectstart="return false" oncontextmenu="return false" ondragstart="return false" onMouseOver="window.status='©<?php echo $nom_serveur ?>'; return true;" >
<div id="contenu">
<table width="784" cellpadding="0" cellspacing="0">
<center>
<tr>
<td colspan="2"><h1>La boutique <?php echo $nom_serveur ?></h1></td>
</tr>
<tr>
<td colspan="2"><p> </p>
<p>Bienvenue dans la boutique <?php echo $nom_serveur ?>.</p>
<p>Cette boutique automatisée vous permettra d'acheter une multitude d'articles dont vous pourrez utiliser avec vos personnages.</p>
<p align="center">Connectez-vous !
<p align="center">
<?php
$connexion=mysql_connect($host,$user,$pass_user)or die("connexion impossible");
mysql_select_db($logon,$connexion)or die("connexion à la base impossible");
if (isset($_POST['username']))
{
$uname = addslashes($_POST['username']); // mise en variable du nom d'utilisateur saisi
$password = $_POST['password']; // mise en variable du mot de passe crypté saisi
$gm = $_POST['gm']; // récupération du niveau du compte
$verif = mysql_query("SELECT * FROM accounts WHERE login='$uname' AND password='$password'") or die (mysql_error()); // requête sur la base administrateurs
$row_verif = mysql_fetch_assoc($verif);
$utilisateur = mysql_num_rows($verif);
if ($utilisateur) // On test s'il y a un utilisateur correspondant
{
// déclaration des variables de session
$_SESSION['uname'] = stripslashes($row_verif['login']); // Son Login
$_SESSION['id_compte'] = $row_verif['acct'];
$_SESSION["points"]=$row_verif["points"];
//header("Location:boutique2.php"); //redirection vers la page d'accueil du joueur
echo '<meta http-equiv="refresh" content="0; url=boutique2.php" />';
}
else
{
echo'<em>Connexion échoué. Vous avez du entrer un mauvais login ou mot de passe</em>';
}
}
?>
<form id="form2" name="form2" method="post" action="">
<div align="center">
<table width="361">
<tr>
<td width="112" bgcolor="#FFFFCC"><div align="center"><span class="Style2">Nom compte</span></div></td>
<td width="233" bgcolor="#FFFFCC"><input name="username" type="text" id="username" size="35" /> </td>
</tr>
<tr>
<td bgcolor="#FFFFCC"><div align="center"><span class="Style2">Mot de passe</span></div></td>
<td bgcolor="#FFFFCC"><input name="password" type="password" id="password" size="35" /></td>
</tr>
</table>
</div>
<p align="center"><input type="submit" name="bouton" id="bouton" value="Se connecter !" />
</p>
</form> </p></td>
</tr>
</table>
</div>
</center>
</body>
</html>
Page ou je souhaite avoir le lien quand la personne est de niveau az ou a:
<?php
require('config.php');
$connexion=mysql_connect($host,$user,$pass_user)or die("connexion impossible");
session_start(); // On relaye la session
mysql_select_db($logon,$connexion)or die("connexion à la base impossible");
$uname = $_SESSION['uname'];
$id_compte = $_SESSION['id_compte'];
$verif = mysql_query("SELECT * FROM accounts WHERE login='$uname' AND acct='$id_compte'") or die (mysql_error()); // requête sur la base administrateurs
$row_verif = mysql_fetch_assoc($verif);
$_SESSION['points'] = $row_verif['points'];
?>
<?php
if (isset($_SESSION['uname']))
{
$id_compte = $_SESSION['id_compte'];
?>
<?php
}
else
{//Si ce n'est pas connecté...
header("Location:boutique.php"); //redirection vers la page d'accueil du joueur
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Boutique <?php echo $nom_serveur ?></title>
<link href="style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.Style1 {
color: #000000;
font-size: 14px;
font-weight: bold;
}
.Style2 {
color: #00CCFF;
font-weight: bold;
}
-->
</style>
</head>
<body>
<body onselectstart="return false" oncontextmenu="return false" ondragstart="return false" onMouseOver="window.status='©
<?php echo $nom_serveur ?>'; return true;" > </body>
<div id="contenu">
<table width="784" cellpadding="0" cellspacing="0">
<center>
<tr>
<td colspan="2"><h1>La boutique <?php echo $nom_serveur ?></h1></td>
</tr>
<tr>
<td valign="top"><a href="?deco=1">Se déconnecter</a></td>
<td valign="top"> <div align="center">Vous êtes connecté sous le compte <strong><?php echo $_SESSION['uname']; ?></strong></div></td>
</tr>
<tr>
<td colspan="2" valign="top"><p align="center">
<?php
if($_GET['deco'] == 1)
{
session_destroy();
echo '<meta http-equiv="refresh" content="0; url=boutique.php" />';
}
?> <strong>Bienvenue dans la boutique <?php echo $nom_serveur ?>.</strong><br />
Vos points => <span class="Style2"><?php echo $_SESSION['points']; ?></span></p>
<p align="center">Choisissez le personnage dans lequel vous voulez que les articles soient envoyés.</p>
<div align="center">
<?php
$id_compte = $_SESSION['id_compte'];
mysql_select_db($character,$connexion)or die("connexion à la base impossible");
$req = mysql_query("SELECT guid, acct, class, name, race, level FROM characters WHERE acct='$id_compte' ORDER BY name ASC") or die (mysql_error());
$i = 0;
// On écrit les liens vers chacune des pages
// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 10; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query("SELECT COUNT(*) AS nb_users FROM characters") or die (mysql_error());
$rep = mysql_fetch_array($retour);
$totalDesMessages = $rep['nb_users'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo '';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '';
}
?>
</p>
</div>
<p align="center">
<?php if (isset($_POST['page_news']))
{
$page = $_POST['page_news']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}
///////////////////////////////////////
// mise en place des race et classes
$race = array (
1 => 'Humain',
2 => 'Orc',
3 => 'Nain',
4 => 'Elfe de la nuit',
5 => 'Mort vivant',
6 => 'Tauren',
7 => 'Gnome',
8 => 'Troll',
9 => 'Gnome', // A vérifier !!
10 => 'Elfe de sang',
11 => 'Draenei',
);
$classe = array (
1 => 'Guerrier',
2 => 'Paladin',
3 => 'Chasseur',
4 => 'Voleur',
5 => 'Prêtre',
7 => 'Chaman',
8 => 'Mage',
9 => 'Démoniste',
11 => 'Druide',
);
////////////////////////////////////////
// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$req = mysql_query("SELECT * FROM characters WHERE acct='$id_compte' ORDER BY name ASC") or die (mysql_error());
echo' <table width="500" border="1" align="center">';
echo'<tr><th width="121" bgcolor="#54222D" scope="col">Nom personnage</th>
<th width="65" bgcolor="#54222D" scope="col">Level</th>
<th width="93" bgcolor="#54222D" scope="col">Race</th>
<th width="93" bgcolor="#54222D" scope="col">Classe</th>
<th width="94" bgcolor="#54222D" scope="col"> </th></tr>';
while ($rep = mysql_fetch_array($req)) //while ($donnees = mysql_fetch_array($reponse))
{
$race_req = $rep['race'];
$classe_req = $rep['class'];
echo'<tr><td bgcolor="#FFFFCC"><div align="center" class="Style1">'.$rep['name'].'</div></td>
<td bgcolor="#FFFFCC"><div align="center" class="Style1">'.$rep['level'].'</div></td>
<td bgcolor="#FFFFCC"><div align="center"><span class="Style1">'. $race[''.$race_req.''] .'</span></div></td>
<td bgcolor="#FFFFCC"><div align="center"><span class="Style1">'. $classe[''.$classe_req.''] .'</span></div></td>
<td bgcolor="#FFFFCC"><div align="center" class="Style1">
<a href="boutique3.php?numperso='.$rep['guid'].'">Choisir</a></div></td></tr>';
$i++;
}
echo' </table>';
if ($i == 0)
{
echo 'Aucun personnage trouvé...';
}
?>
</p>
<p> </p></td>
</tr>
</table>
</div>
</center>
</body>
</html>
Merci de ton aide!
oui c'est bien un session_start()
Voilà les codes sources des deux pages concernés:
PS: désoler ça fait un petit peu brouillon :s
[php]<?php
require('config.php');
session_start(); // On relaye la session
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Boutique <?php echo $nom_serveur ?></title>
<link href="style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.Style2 {font-weight: bold; color: #000000;}
.Style3 {
color: #0000FF;
font-weight: bold;
}
.Style4 {
color: #FF9966;
font-weight: bold;
}
.Style9 {color: #FF3333; font-weight: bold; }
-->
</style>
</head>
<!--Debut CSS - http://www.jejavascript.net/ //-->
<link rel="stylesheet" href="./style.css" type="text/css">
<!--Fin CSS - http://www.jejavascript.net/ //-->
<center><body>
<body onselectstart="return false" oncontextmenu="return false" ondragstart="return false" onMouseOver="window.status='©<?php echo $nom_serveur ?>'; return true;" >
<div id="contenu">
<table width="784" cellpadding="0" cellspacing="0">
<center>
<tr>
<td colspan="2"><h1>La boutique <?php echo $nom_serveur ?></h1></td>
</tr>
<tr>
<td colspan="2"><p> </p>
<p>Bienvenue dans la boutique <?php echo $nom_serveur ?>.</p>
<p>Cette boutique automatisée vous permettra d'acheter une multitude d'articles dont vous pourrez utiliser avec vos personnages.</p>
<p align="center">Connectez-vous !
<p align="center">
<?php
$connexion=mysql_connect($host,$user,$pass_user)or die("connexion impossible");
mysql_select_db($logon,$connexion)or die("connexion à la base impossible");
if (isset($_POST['username']))
{
$uname = addslashes($_POST['username']); // mise en variable du nom d'utilisateur saisi
$password = $_POST['password']; // mise en variable du mot de passe crypté saisi
$gm = $_POST['gm']; // récupération du niveau du compte
$verif = mysql_query("SELECT * FROM accounts WHERE login='$uname' AND password='$password'") or die (mysql_error()); // requête sur la base administrateurs
$row_verif = mysql_fetch_assoc($verif);
$utilisateur = mysql_num_rows($verif);
if ($utilisateur) // On test s'il y a un utilisateur correspondant
{
// déclaration des variables de session
$_SESSION['uname'] = stripslashes($row_verif['login']); // Son Login
$_SESSION['id_compte'] = $row_verif['acct'];
$_SESSION["points"]=$row_verif["points"];
//header("Location:boutique2.php"); //redirection vers la page d'accueil du joueur
echo '<meta http-equiv="refresh" content="0; url=boutique2.php" />';
}
else
{
echo'<em>Connexion échoué. Vous avez du entrer un mauvais login ou mot de passe</em>';
}
}
?>
<form id="form2" name="form2" method="post" action="">
<div align="center">
<table width="361">
<tr>
<td width="112" bgcolor="#FFFFCC"><div align="center"><span class="Style2">Nom compte</span></div></td>
<td width="233" bgcolor="#FFFFCC"><input name="username" type="text" id="username" size="35" /> </td>
</tr>
<tr>
<td bgcolor="#FFFFCC"><div align="center"><span class="Style2">Mot de passe</span></div></td>
<td bgcolor="#FFFFCC"><input name="password" type="password" id="password" size="35" /></td>
</tr>
</table>
</div>
<p align="center"><input type="submit" name="bouton" id="bouton" value="Se connecter !" />
</p>
</form> </p></td>
</tr>
</table>
</div>
</center>
</body>
</html>[/php]
Page ou je souhaite avoir le lien quand la personne est de niveau az ou a:
[php]<?php
require('config.php');
$connexion=mysql_connect($host,$user,$pass_user)or die("connexion impossible");
session_start(); // On relaye la session
mysql_select_db($logon,$connexion)or die("connexion à la base impossible");
$uname = $_SESSION['uname'];
$id_compte = $_SESSION['id_compte'];
$verif = mysql_query("SELECT * FROM accounts WHERE login='$uname' AND acct='$id_compte'") or die (mysql_error()); // requête sur la base administrateurs
$row_verif = mysql_fetch_assoc($verif);
$_SESSION['points'] = $row_verif['points'];
?>
<?php
if (isset($_SESSION['uname']))
{
$id_compte = $_SESSION['id_compte'];
?>
<?php
}
else
{//Si ce n'est pas connecté...
header("Location:boutique.php"); //redirection vers la page d'accueil du joueur
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Boutique <?php echo $nom_serveur ?></title>
<link href="style.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.Style1 {
color: #000000;
font-size: 14px;
font-weight: bold;
}
.Style2 {
color: #00CCFF;
font-weight: bold;
}
-->
</style>
</head>
<body>
<body onselectstart="return false" oncontextmenu="return false" ondragstart="return false" onMouseOver="window.status='©
<?php echo $nom_serveur ?>'; return true;" > </body>
<div id="contenu">
<table width="784" cellpadding="0" cellspacing="0">
<center>
<tr>
<td colspan="2"><h1>La boutique <?php echo $nom_serveur ?></h1></td>
</tr>
<tr>
<td valign="top"><a href="?deco=1">Se déconnecter</a></td>
<td valign="top"> <div align="center">Vous êtes connecté sous le compte <strong><?php echo $_SESSION['uname']; ?></strong></div></td>
</tr>
<tr>
<td colspan="2" valign="top"><p align="center">
<?php
if($_GET['deco'] == 1)
{
session_destroy();
echo '<meta http-equiv="refresh" content="0; url=boutique.php" />';
}
?> <strong>Bienvenue dans la boutique <?php echo $nom_serveur ?>.</strong><br />
Vos points => <span class="Style2"><?php echo $_SESSION['points']; ?></span></p>
<p align="center">Choisissez le personnage dans lequel vous voulez que les articles soient envoyés.</p>
<div align="center">
<?php
$id_compte = $_SESSION['id_compte'];
mysql_select_db($character,$connexion)or die("connexion à la base impossible");
$req = mysql_query("SELECT guid, acct, class, name, race, level FROM characters WHERE acct='$id_compte' ORDER BY name ASC") or die (mysql_error());
$i = 0;
// On écrit les liens vers chacune des pages
// On met dans une variable le nombre de messages qu'on veut par page
$nombreDeMessagesParPage = 10; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query("SELECT COUNT(*) AS nb_users FROM characters") or die (mysql_error());
$rep = mysql_fetch_array($retour);
$totalDesMessages = $rep['nb_users'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo '';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '';
}
?>
</p>
</div>
<p align="center">
<?php if (isset($_POST['page_news']))
{
$page = $_POST['page_news']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)
}
else // La variable n'existe pas, c'est la première fois qu'on charge la page
{
$page = 1; // On se met sur la page 1 (par défaut)
}
///////////////////////////////////////
// mise en place des race et classes
$race = array (
1 => 'Humain',
2 => 'Orc',
3 => 'Nain',
4 => 'Elfe de la nuit',
5 => 'Mort vivant',
6 => 'Tauren',
7 => 'Gnome',
8 => 'Troll',
9 => 'Gnome', // A vérifier !!
10 => 'Elfe de sang',
11 => 'Draenei',
);
$classe = array (
1 => 'Guerrier',
2 => 'Paladin',
3 => 'Chasseur',
4 => 'Voleur',
5 => 'Prêtre',
7 => 'Chaman',
8 => 'Mage',
9 => 'Démoniste',
11 => 'Druide',
);
////////////////////////////////////////
// On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL
$premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage;
$req = mysql_query("SELECT * FROM characters WHERE acct='$id_compte' ORDER BY name ASC") or die (mysql_error());
echo' <table width="500" border="1" align="center">';
echo'<tr><th width="121" bgcolor="#54222D" scope="col">Nom personnage</th>
<th width="65" bgcolor="#54222D" scope="col">Level</th>
<th width="93" bgcolor="#54222D" scope="col">Race</th>
<th width="93" bgcolor="#54222D" scope="col">Classe</th>
<th width="94" bgcolor="#54222D" scope="col"> </th></tr>';
while ($rep = mysql_fetch_array($req)) //while ($donnees = mysql_fetch_array($reponse))
{
$race_req = $rep['race'];
$classe_req = $rep['class'];
echo'<tr><td bgcolor="#FFFFCC"><div align="center" class="Style1">'.$rep['name'].'</div></td>
<td bgcolor="#FFFFCC"><div align="center" class="Style1">'.$rep['level'].'</div></td>
<td bgcolor="#FFFFCC"><div align="center"><span class="Style1">'. $race[''.$race_req.''] .'</span></div></td>
<td bgcolor="#FFFFCC"><div align="center"><span class="Style1">'. $classe[''.$classe_req.''] .'</span></div></td>
<td bgcolor="#FFFFCC"><div align="center" class="Style1">
<a href="boutique3.php?numperso='.$rep['guid'].'">Choisir</a></div></td></tr>';
$i++;
}
echo' </table>';
if ($i == 0)
{
echo 'Aucun personnage trouvé...';
}
?>
</p>
<p> </p></td>
</tr>
</table>
</div>
</center>
</body>
</html>
[/php]
Merci de ton aide!