par
Stef » 05 sept. 2008, 12:04
Bonjour chers phpiens et phpiennes (y en a?)!!
J'ai un fichier php de traitement de formulaire de login qui ne fonctionne pas, j'ai essayé plein de truc différent, rien à faire:
<?php
session_start();
// Message
if (empty($_POST['nom']) || empty($_POST['mdp']) ) //Oublie d'un champ
{
$message = '<h3>Erreur</h3>
<p>Une erreur s\'est produite pendant ton authentification.
Tous les champs doivent être rempli!<br />
<a href="connect.php">Retourner</a> au formulaire</p>';
}
else
{
//Acces interdit : le membre est déjà connecté
if (isset($_SESSION['nom']))
{
$message ='<p>Tu es déjà connecté...</p>';
}
else // Autorisation ok : il reste à voir le mot de passe
{
include("includes/db.php");
mysql_connect($host, $root, $mdp);
mysql_select_db($db);
//On protège les données
$pseudo = mysql_real_escape_string($_POST['nom']);
$password = mysql_real_escape_string($_POST['mdp']);
$requete = mysql_query('SELECT mdp
FROM mb_users WHERE nom = "'.$pseudo.'"')
or die (mysql_error());
$data = mysql_fetch_assoc($requete);
if ($data['mdp'] == md5($password)) // Acces OK !
{
$_SESSION['nom'] = $pseudo;
$message = '<h3>Bienvenue '.stripslashes(htmlspecialchars($_SESSION['nom'])).'</h3>
<p>Tu es maintenant connecté!</p>';
}
else // Acces pas OK !
{
$message = '<h3>Erreur<h3><p>Une erreur s est produite
pendant ton authentification.
Le mot de passe ou le pseudo entré n\'est pas correcte.</p>
<p>Revenir au <a href="connect.php">formulaire d\'identification</a>.</p>';
}
}
}
$titre = "Music*boX v.3 :: connection +";
include ('includes/top.php');
?>
Il passe systématiquement sur le dernier else bien que le pseudo et le mdp soit correct... Je ne comprends vraiment pas pourquoi!
Que faire?
Bonjour chers phpiens et phpiennes (y en a?)!!
J'ai un fichier php de traitement de formulaire de login qui ne fonctionne pas, j'ai essayé plein de truc différent, rien à faire:
[php]
<?php
session_start();
// Message
if (empty($_POST['nom']) || empty($_POST['mdp']) ) //Oublie d'un champ
{
$message = '<h3>Erreur</h3>
<p>Une erreur s\'est produite pendant ton authentification.
Tous les champs doivent être rempli!<br />
<a href="connect.php">Retourner</a> au formulaire</p>';
}
else
{
//Acces interdit : le membre est déjà connecté
if (isset($_SESSION['nom']))
{
$message ='<p>Tu es déjà connecté...</p>';
}
else // Autorisation ok : il reste à voir le mot de passe
{
include("includes/db.php");
mysql_connect($host, $root, $mdp);
mysql_select_db($db);
//On protège les données
$pseudo = mysql_real_escape_string($_POST['nom']);
$password = mysql_real_escape_string($_POST['mdp']);
$requete = mysql_query('SELECT mdp
FROM mb_users WHERE nom = "'.$pseudo.'"')
or die (mysql_error());
$data = mysql_fetch_assoc($requete);
if ($data['mdp'] == md5($password)) // Acces OK !
{
$_SESSION['nom'] = $pseudo;
$message = '<h3>Bienvenue '.stripslashes(htmlspecialchars($_SESSION['nom'])).'</h3>
<p>Tu es maintenant connecté!</p>';
}
else // Acces pas OK !
{
$message = '<h3>Erreur<h3><p>Une erreur s est produite
pendant ton authentification.
Le mot de passe ou le pseudo entré n\'est pas correcte.</p>
<p>Revenir au <a href="connect.php">formulaire d\'identification</a>.</p>';
}
}
}
$titre = "Music*boX v.3 :: connection +";
include ('includes/top.php');
?>
[/php]
Il passe systématiquement sur le dernier else bien que le pseudo et le mdp soit correct... Je ne comprends vraiment pas pourquoi!
Que faire?