Bonjour, comme beaucoup j'ai cette erreur et je ne sais pas comment la traiter, je suis débutant en php et malgré des recherches je n'arrive pas à résoudre ce problème.
L'erreur se situe à la ligne de vérification de la concordance des mots de passe. Le message qui s'affiche sur la page d'après mon code est : "mauvais mot de passe pour cet utilisateur" et pas un autre. Merci de votre aide.
Voilà le message d'erreur complet:
Notice: Undefined index: pass in F:\wamp\www\projet\functions.p hp on line 23
Call Stack
# Time Memory Function Location
1 0.0010 144592 {main}( ) ..\login.php:0
2 0.0190 156112 login( ) ..\login.php:14
La ligne 23 est celle-ci :
// On vérifie la concordance des mots de passe
if(($_POST['pass']) == $user->pass) {
Voici mon code :
Code PHP:
<?php
function login() {
$pass= (isset($_POST['pass'])) ? mysql_real_escape_string($_POST['pass']) : NULL;
// Si on a soumit le formulaire (si on a cliqué sur "Se connecter")
if(isset($_POST['go_login'])) {
// Si les deux champs ne sont pas vides
if(!empty($_POST['login']) || !empty($_POST['pass'])) {
// On éxécute une requête pour détecter si le login entré existe dans la base
$query = mysql_query("SELECT * FROM users WHERE login = '".$_POST['login']."'");
// Si on a un résultat => il existe
if(mysql_num_rows($query) == 1) {
$user = mysql_fetch_object($query);
// On vérifie la concordance des mots de passe
if(($_POST['pass']) == $user->pass) {
// Si on arrive jusque ici c'est que le couple login / mot de passe est résolu
// On lance donc la session
session_start();
$_SESSION['id'] = $user->id;
$_SESSION['login'] = $user->login;
echo 'gg le g';
} else {
echo 'Mauvais mot de passe pour cet utilisateur.';
}
} else {
echo 'Ce login n\'existe pas dans notre base.';
}
} else {
echo 'Vous devez remplir tous les champs !';
}
}
}
?>
-----