le 02/01/2010 à 01:11
Probleme Connexion Espace membre
Voici mon problème, je me suis servi du tuto sur l'espace membre pour créé un espace membre sur mon site. Pour se qui est de l'inscription tout va bien les données sont belle et bien stockées dans ma base mysql. Le probleme est lors de la connection. Lorsque je rentre mon login et mon mot de passe, je clique sur connection puis je recoit le retour d'erreur "Au moins un des champs est vide.", pourtant j'ai bien entrée les données.
Voici mon code php:
______
Et voici mon formulaire de connexion:
_____
Merci d'essayer de trouver le probleme.
Voici mon code php:
<?php
// on teste si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('espace_membre', $base);
// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.mysql_escape_string(md5($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
mysql_free_result($req);
mysql_close();
// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: inscription.php');
exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu.';
}
// sinon, alors la, il y a un gros problème :)
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
______
Et voici mon formulaire de connexion:
<form action="index.php" method="post">
LOGIN: <input name="Login" type="text" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>">
PASSWORD: <input name="pass" type="password" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>">
<input type="submit" name="connexion" value="Connexion">
</form>
<?php
if (isset($erreur)) echo ' ',$erreur;
?>
_____
Merci d'essayer de trouver le probleme.