Bonjour à tous !
Je conçois actuellement un espace membre en PHP avec une page d'inscription, une page de connexion si les membres sont déjà dans la base, etc.
La page d'inscription marche sans soucis, l'enregistrement dans la base mySql se fait bien, et une fois que l'inscription est terminée, le visiteur est redirigé automatiquement vers sa page perso.
Par contre, là où je bloque, c'est lorsque j'essaie de me connecter avec des identifiants déjà dans la base.
Le message d'erreur que j'ai programmé ("Aucun compte n'est relié aux identifiants que vous avez indiqué") s'affiche en permanence alors que j'ai bien les données enregistrées dans la base...
Structure de la base : ID int (11) - login (text) - pass (text)
Le code que j'utilise est le suivant :
Si vous aviez deux, trois pistes pour m'aiguiller, ça m'éviterai de devenir chauve !
Merci à tous !
Je conçois actuellement un espace membre en PHP avec une page d'inscription, une page de connexion si les membres sont déjà dans la base, etc.
La page d'inscription marche sans soucis, l'enregistrement dans la base mySql se fait bien, et une fois que l'inscription est terminée, le visiteur est redirigé automatiquement vers sa page perso.
Par contre, là où je bloque, c'est lorsque j'essaie de me connecter avec des identifiants déjà dans la base.
Le message d'erreur que j'ai programmé ("Aucun compte n'est relié aux identifiants que vous avez indiqué") s'affiche en permanence alors que j'ai bien les données enregistrées dans la base...
Structure de la base : ID int (11) - login (text) - pass (text)
Le code que j'utilise est le suivant :
<?php //si le visiteur a soumis le formulaire de contact
if(isset($_POST['connexion']) && $_POST['connexion'] == 'connexion')
{
if((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])))
{
//connexion à la BDD
include("connexion_BDD.php");
//test si le couple login/pass est présent dans la BDD
$sql = 'SELECT count(*) FROM membres WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass="'.mysql_escape_string($_POST['pass']).'"';
$req = mysql_query($sql) or die ('Erreur - '.$sql.' <br> '.mysql_error());
$data = mysql_fetch_array($req);
mysql_free_result($req);
mysql_close();
//s'il y a réponse, l'utilisateur est membre
if($data [0] == 1)
{
session_start();
$_SESSION['login'] = $_POST['login'];
header('Location: membre_connecte.php');
exit();
}
//s'il n'y a pas de réponse, l'utilisateur s'est trompé soit dans son login, soit dans son mot de passe
elseif($data [0] == 0)
{
$erreur = 'Aucun compte n\'est relié aux identifiants que vous avez indiqué';
}
//si plusieurs membres ont les mêmes identifiants de connexion
else
{
$erreur = 'Plusieurs membres ont les mêmes idenfiants de connexion';
}
}
else
{
$erreur = 'Tous les champs doivent être renseignés';
}
}
;?>
Si vous aviez deux, trois pistes pour m'aiguiller, ça m'éviterai de devenir chauve !

Merci à tous !