Notice et fatal error
Résolu
JeunLoup
Messages postés
6
Date d'inscription
Statut
Membre
Dernière intervention
-
JeunLoup Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
JeunLoup Messages postés 6 Date d'inscription Statut Membre Dernière intervention -
bjr à tous je débute un peu en PHP et actu je peux plus progresser à cause d'une erreur dans mon code, j'aurais vraiment besoin d'aide svp.
le navigateur me renvoi tjr ces erreurs
"Notice: Undefined index: active in C:\wamp64\www\tests\Login.php on line 14"
"Fatal error: Call to undefined function session_register() in C:\wamp64\www\tests\Login.php on line 21"
mon code:
EDIT : Ajout des balises de code
le navigateur me renvoi tjr ces erreurs
"Notice: Undefined index: active in C:\wamp64\www\tests\Login.php on line 14"
"Fatal error: Call to undefined function session_register() in C:\wamp64\www\tests\Login.php on line 21"
mon code:
<?php include("conf.php"); session_start(); if($_SERVER["REQUEST_METHOD"] == "POST") { // username and password sent from form $myusername = mysqli_real_escape_string($db,$_POST['username']); $mypassword= mysqli_real_escape_string($db,$_POST['password']); $sql = "SELECT matricule FROM etudiants WHERE user_etud = '$myusername' and pwd_etud = '$mypassword'"; $result = mysqli_query($db,$sql); $row = mysqli_fetch_array($result,MYSQLI_ASSOC); $active = $row['active']; // ligne 14 $count = mysqli_num_rows($result); // If result matched $myusername and $mypassword, table row must be 1 row if($count == 1) { session_register("myusername"); // ligne 21 $_SESSION['login_user'] = $myusername; header("location: Bienvenue.php"); }else { $error = "Votre nom d'utilisateur ou mot de passe incorrect"; } } ?> <!DOCTYPE html> <html lang="fr"> <head> <title>Gestion ordres de mission</title> <meta charset="utf-8"> <link rel="stylesheet" href= "style2.css" /> </head> <body bgcolor = "#FFFFFF"> <div align = "center"> <div style = "width:300px; border: solid 1px #333333; " align = "left"> <div style = "background-color:#333333; color:#FFFFFF; padding:3px;"><b>Login</b></div> <div style = "margin:30px"> <form action = "" method = "post"> <label>Nom d'utilisateur :</label><input type = "text" name = "username" class = "box"/><br /><br /> <label>Mot de passe :</label><input type = "mot de passe" name = "password" class = "box" /><br/><br /> <input type = "submit" value = " Submit "/><br /> </form> <div style = "font-size:11px; color:#cc0000; margin-top:10px"> </div> </div> </div> </body> </html>
EDIT : Ajout des balises de code
A voir également:
- Fatal-error.net astuces informatiques
- Publipostage word astuces - Accueil - Word
- Adwcleaner pc astuces - Télécharger - Antivirus & Antimalwares
- Composants informatiques - Guide
- Fatal-error.net dépannage informatique ✓ - Forum Windows
- Fatal error avec clavier bloqué - Forum Windows
4 réponses
Bonjour,
Pour commencer.. lorsque tu postes ton code sur le forum, merci d'y mettre les balises de code.
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Ensuite, pour tes soucis :
Si ta requête ne retourne aucun résultat.. $row est vide .. et par conséquent, $row['active'] n'existe pas.
Il te faut donc placer cette ligne de code dans tes if.
et supprimer la ligne
Pour finir, je t'invite à lire et à appliquer ceci pour tes prochains codes
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Pour commencer.. lorsque tu postes ton code sur le forum, merci d'y mettre les balises de code.
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Ensuite, pour tes soucis :
Si ta requête ne retourne aucun résultat.. $row est vide .. et par conséquent, $row['active'] n'existe pas.
Il te faut donc placer cette ligne de code dans tes if.
$result = mysqli_query($db,$sql); $row = mysqli_fetch_array($result,MYSQLI_ASSOC); $count = mysqli_num_rows($result); // If result matched $myusername and $mypassword, table row must be 1 row if($count == 1) { $active = $row['active']; // ligne 14
et supprimer la ligne
session_register("myusername"); // ligne 21
Pour finir, je t'invite à lire et à appliquer ceci pour tes prochains codes
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
sorry je le ferai. merci
lorsque je le modifie comme vous l'avez dit, le navigateur actualise juste la page.
comment faire? please!
lorsque je le modifie comme vous l'avez dit, le navigateur actualise juste la page.
comment faire? please!
Bonjour
Ligne 11 :
Ligne 14 :
Si tu ne vas chercher que le champ 'matricule', ne t'attends pas à trouver un champ 'active' dans le résultat. C'est pour ça que tu as une erreur Undefined index: active
Ligne 11 :
"SELECT matricule FROM ....
Ligne 14 :
...$row['active']...
Si tu ne vas chercher que le champ 'matricule', ne t'attends pas à trouver un champ 'active' dans le résultat. C'est pour ça que tu as une erreur Undefined index: active