bon voila j'ai fais le début de mon jeu php avec une base fournie par le site http://www.aramiil.net cependant mon système de conexion ne marche pas, alors que l'inscription fonctionne, pourquoi ? voici mes fichiers que j'utilises avec wamp
index.php
config.php
home.php
inscription.php
fonctions_login.php
index.php
Code :
<?php
if(isset($_POST['pseudonyme']))
{
include('fonctions_login.php');
connexion($_POST['pseudonyme'], $_POST['password']);
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Accueil</title>
<link rel="stylesheet" type="text/css" href="config.css" />
</head>
<body>
<div id="box1">
<form method="post" action="index.php">
Pseudonyme : <input name="pseudonyme" /><br />
Mot de passe : <input name="password" type="password" /><br />
<input name="Valider" type="submit" value="Valider" />
</form><br /><br />
<a href="inscription.php">S'inscrire</a>
</div>
</body>
</html>
config.php
Code :
<?php
$hostMysql = 'localhost'; //Le serveur MySQL
$pseudoMysql = 'root'; //Le nom d'utilisateur MySQL
$passMysql = ''; //Le mot de passe correspondant à l'utilisateur MySQL
$baseMysql = 'blob'; //Le nom de la base MySQL
?>
home.php
Code :
<?php
include('fonctions_login.php');
//On vérifie la connexion
if(check() === false)
{
header('location: index.php');
die();
}
if(isset($_GET['logout']))
{
deconnexion();
header('location: index.php');
die();
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<link rel="stylesheet" type="text/css" href="config.css" />
<title>Accueil - Connecté</title>
</head>
<body>
<div id="box1">
Vous êtes connecté.<br />
<a href="home.php?logout=true">Se déconnecter</a>
</div>
</body>
</html>
inscription.php
Code :
<?php
//Vérification de l'envoi des informations
if(isset($_POST['pseudonyme']))
{
//On récupère les informations
$pseudonyme = $_POST['pseudonyme'];
$password = $_POST['password'];
//On inclu nos fonctions
include('fonctions_login.php');
//On fait le switch
switch (inscription($pseudonyme, $password))
{
case 1 :
$erreur = 'Votre pseudonyme et votre mot de passe doivent être composés uniquement de chiffres et de lettres';
break;
case 2 :
$erreur = 'Votre pseudonyme doit faire entre 1 et 10 caractères. Votre mot de passe doit faire entre 4 et 16 caractères.';
break;
case 3 :
$erreur = 'Ce pseudonyme est déjà utilisé.';
break;
case 5 :
connexion($pseudonyme, $password);
break;
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<link rel="stylesheet" type="text/css" href="config.css" />
<title>Inscription</title>
</head>
<body>
<div id="box1">
<?php
//Si il y a une erreur, on l'affiche
if(isset($erreur))
{
echo $erreur;
}
?>
Pour vous inscrire, remplissez ce formulaire:
<br />
<!-- Formulaire d'inscription -->
<form method="post" action="inscription.php">
Pseudonyme désiré : <input name="pseudonyme" /><br />
Mot de passe : <input name="password" /><br />
<input type="submit" name="Valider" value="Valider" />
</form>
</body>
</body>
</html>
fonctions_login.php
Code PHP :
<?php
function inscription($pseudonyme, $password)
{
//Vérification de la conformité du pseudonyme et du mot de passe
if(preg_match('/[^a-z0-9]/i', $pseudonyme) || preg_match('/[^a-z0-9]/i', $password))
{
return 1;
}
//Vérification de la longueur du pseudonyme et du mot de passe
if(strlen($pseudonyme) > 10 || strlen($pseudonyme) == 0 || strlen($password) < 4 || strlen($password) > 16)
{
return 2;
}
//Vérification de l'unicité du pseudonyme
//On inclu le fichier de configuration créé en 1.
include('config.php');
//On créé une connexion à la base de données
$db = mysql_connect($hostMysql, $pseudoMysql, $passMysql) or die(mysql_error());
mysql_select_db($baseMysql, $db);
//On prépare notre requete
$sql = 'SELECT pseudonyme FROM joueurs WHERE pseudonyme = "' . $pseudonyme . '"';
//On l'execute
$resultat = mysql_query($sql, $db) or die(mysql_error());
//On compte les résultats
if(mysql_num_rows($resultat) > 0)
{
return 3;
}
//On vide le résultat
mysql_free_result($resultat);
//Choix des valeures par défaut
$vie = 100;
$mana = 100;
$regen = 5;
$force = 1;
$defense = 1;
$magie = 1;
//Enregistrement du résultat
//On prépare la requête
$sql = "INSERT INTO `joueurs`
( `pseudonyme` , `password` , `vie` , `viemax` , `mana` , `manamax` , `regeneration` , `force` , `magie` , `defense` , `experience` , `tour` )
VALUES ( '$pseudonyme', '$password', '$vie', '$vie', '$mana', '$mana', '$regen', '$force', '$magie', '$defense', '0', '0')";
//On l'enregistre
mysql_query($sql, $db) or die(mysql_error());
//On ferme la connexion MySQL
mysql_close($db);
//On renvoi la bonne valeure
return 5;
}
function connexion($pseudonyme, $password)
{
//Vérification de la conformité du pseudonyme et du mot de passe
if(preg_match('/[^a-z0-9]/i', $pseudonyme) || preg_match('/[^a-z0-9]/i', $password)
|| strlen($pseudonyme) > 10 || strlen($pseudonyme) == 0 || strlen($password) < 4 || strlen($password) > 16)
{
header('location: index.php');
die();
}
//Récupération des informations
//On inclu le fichier de configuration créé en 1.
include('config.php');
//On créé une connexion à la base de données
$db = mysql_connect($hostMysql, $pseudoMysql, $passMysql) or die(mysql_error());
mysql_select_db($baseMysql, $db);
//On prépare notre requete
$sql = 'SELECT pseudonyme FROM joueurs WHERE pseudonyme = "' . $pseudonyme . '"';
//On l'execute
$resultat = mysql_query($sql, $db) or die(mysql_error());
//Vérification du mot de passe
//On vérifie qu'il y a eu un résultat
if(mysql_num_rows($resultat) == 0)
{
header('location: index.php');
die();
}
//On met en forme les informations
$informations = mysql_fetch_assoc($resultat);
//On libère le résultat et on ferme la connexion MySQL, on en aura plus besoin
mysql_free_result($resultat);
mysql_close($db);
//On vérifie maintenant le mot de passe
if($informations['password'] != $password)
{
header('location: index.php');
die();
}
//Création de la session
//On démarre la session
if(!isset($_SESSION))
{
session_start();
}
//On enregistre les informations
$_SESSION = $informations;
//Redirection
header('location: home.php');
die();
}
function check()
{
//Lancement de la session
if(!isset($_SESSION))
{
session_start();
}
if(isset($_SESSION['pseudonyme']))
{
return $_SESSION;
} else {
return false;
}
}
function deconnexion()
{
//Destruction de la session
session_unset();
session_destroy();
}
?>
config.css
Code :
body {
background-image:url(image_de_fond.jpg);
z-index: 1;
Background-attachment: fixed;
}
#box1 {
background-image:url(image_de_fond22.png);
background-repeat: no-repeat;
background-position: 50% 50%;
Background-attachment: fixed;
padding-top: 80px;
padding-right: 100px;
padding-bottom: 10px;
padding-left: 100px;
z-index: 2;
}
h1 {
font-family:verdana, sans-serif;
font-size:80%;
color:#ffa500;
background-color:transparent;
text-align:center;
}
h2 {
font-family:verdana, sans-serif;
font-size:80%;
color:#ffa500;
background-color:transparent;
text-align:left;
}
h3 {
font-family:verdana, sans-serif;
font-size:80%;
color:black;
background-color:transparent;
text-align:left;
}
p {
font-family:verdana, sans-serif;
font-size:80%;
color:black;
background-color:transparent;
text-align:left;
margin-left:0px;
margin-right:0px;
}
li {
font-family:verdana, sans-serif;
font-size:80%;
color:black;
background-color:transparent;
text-align:left;
margin-left:0px;
margin-right:0px;
}
a:link {
font-family:verdana, sans-serif;
font-size:90%;
color:navy;
background-color:transparent;
text-decoration:underline;
}
a:visited {
font-family:verdana, sans-serif;
font-size:90%;
color:#ffa500;
background-color:transparent;
text-decoration:underline;
}
a:hover {
font-family:verdana, sans-serif;
font-size:90%;
color:#ffa500;
background-color:transparent;
text-decoration:underline;
}
table {
border-color:transparent;
border-style:solid;
border-width:2px;
}
td {
font-family:verdana, sans-serif;
font-size:80%;
color:black;
text-align:left;
background-color:transparent;
border-color:transparent;
border-style:solid;
border-width:1px;
}
Merci d'avance au surdoué qui sera me répondre.