Correction ithentification

mdico Messages postés 100 Statut Membre -  
roussos Messages postés 227 Statut Membre -
Bonjour,
je compte sur vous tous pour cette correction.
merci

erreur qu 'il affiche :

Notice: Use of undefined constant link - assumed 'link' in c:\program files\easyphp1-7\www\gestionetudiant\connexion.php on line 34
Identifiant Inconnu! Retour
Notice: Undefined variable: row in c:\program files\easyphp1-7\www\gestionetudiant\connexion.php on line 47
Mot de Passe Incorrect! Retour

FICHIER CONNEXION
<body>
<?php session_start();

//test si la variable de session user existe pour verifier si l'authentification a ete effectuée
if(!isset($_SESSION['user'])){
echo "<center>Il faut être authentifié !</center>";
echo "<meta http-equiv=\"Refresh\" content=\"1;URL=connexion.php\">";
exit();
}
?>
<?php
$_SESSION['categorie']=$_POST['categorie'];
$_SESSION['Login']=$_POST['Login'];
$_SESSION['pw']=$_POST['pw'];
$c=$_POST['categorie'];
if($c==1){$t='eleve';} elseif($c==2 ){$t='maitre';} else{$t='lieu';}
$link=mysql_connect('localhost','root','root');
if (!link)
{
die ('<p>Impossible de se connecter : '.mysql_error().'<p>');
}
$db=mysql_select_db('gestionstage',$link);
if(!$db) {die ('<p>Impossible utiliser la base : '.mysql_error().'<p>');}
$Login=$_POST['Login'];
$query="select Nom,Prenom,Login,pw from $t where Login='$Login'";
$resultat=mysql_query($query);
if(mysql_num_rows($resultat)==0) { echo" Identifiant Inconnu!";
echo"<a href='index.php'> Retour </a>";}
else
$row=mysql_fetch_array($resultat, MYSQL_ASSOC);
if($row['pw']!=$_POST['pw']){
echo "Mot de Passe Incorrect!";
echo"<a href='index.php'> Retour </a>";}
else {echo"<p> Bienvenue<strong>".$row['Prenom']."".$row['Nom']."</strong>"."</p>";

}
?>
</body>

FICHIER FORMULAIRE
<form name ="form1" method="post" action="connexion.php"><h3 class="Style2">Connexion au systeme de Gestion des stages:</h3>
<p><strong><em> Parametre de Connexion:</em></strong></p>
<label>
<div align="left">
<input name="categorie" type="radio" value="checked">
<strong>Eleve</strong></div>
</label><br>
<label>
<div align="left">
<input name="categorie" type="radio" value="checked">
<strong>Maitre de stage</strong></div>
</label><br>
<label>
<div align="left">
<input name="categorie" type="radio" value="checked">
<strong> Responsable de site</strong></div>
</label><br>
<label>

<p align="left"><strong>Login</strong>:
<input type="text" name="Login">
</p>
<p align="left"><strong>Password</strong>:
<input type="password" name="pw">
</p>
<label></label>
<p align="center">
<input name type="submit"" value="OK""submit />
</p>
</form>
A voir également:

8 réponses

roussos Messages postés 227 Statut Membre 8
 
bonsoir
tout d'abord verifie bien tes variables par ce que au niveau de ton deuxieme if tu utilise link au lieu de $link
ensuite pour la deuxième erreur pourquoi tu ajoutes MYSQL_ASSOC ?? à quoi il te sert je comprend pas enlève le et vérifie à nouveau ton code.
0
mdico Messages postés 100 Statut Membre
 
ok !
je viens de le faire
effectivement tu as raison.mais l'erreur persiste toujours
voilà l'erreur qu'il m'affiche.

dentifiant Inconnu! Retour
Notice: Undefined variable: row in c:\program files\easyphp1-7\www\gestionetudiant\connexion.php on line 47
Mot de Passe Incorrect! Retour

merci pour votre aide
0
mdico Messages postés 100 Statut Membre
 
c'est pour vous montrer la correction et apparemment le probleme c'est au niveau de connexion

<?php session_start();

//test si la variable de session user existe pour verifier si l'authentification a ete effectuée
if(!isset($_SESSION['user'])){
echo "<center>Il faut être authentifié !</center>";
echo "<meta http-equiv=\"Refresh\" content=\"1;URL=connexion.php\">";
exit();
}
?>
<?php
$_SESSION['categorie']=$_POST['categorie'];
$_SESSION['Login']=$_POST['Login'];
$_SESSION['pw']=$_POST['pw'];
$c=$_POST['categorie'];
if($c==1){$t='eleve';} elseif($c==2 ){$t='maitre';} else{$t='lieu';}
$link=mysql_connect('localhost','root','root');
if (!$link)
{
die ('<p>Impossible de se connecter : '.mysql_error().'<p>');
}
$db=mysql_select_db('gestionstage',$link);
if(!$db) {die ('<p>Impossible utiliser la base : '.mysql_error().'<p>');}
$Login=$_POST['Login'];
$query="select Nom,Prenom,Login,pw from $t where Login='$Login'";
$resultat=mysql_query($query);
if(mysql_num_rows($resultat)==0) { echo" Identifiant Inconnu!";
echo"<a href='index.php'> Retour </a>";}
else
$row=mysql_fetch_array($resultat);
if($row['pw']!=$_POST['pw']){
echo "Mot de Passe Incorrect!";
echo"<a href='index.php'> Retour </a>";}
else {echo"<p> Bienvenue<strong>".$row['Prenom']."".$row['Nom']."</strong>"."</p>";

}
?>
</body>
0
roussos Messages postés 227 Statut Membre 8
 
bonsoir
envoie le code de la ligne 47
j'espère que t'as enlevée MYSQL_ASSOC?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mdico Messages postés 100 Statut Membre
 
<body>
<?php session_start();

//test si la variable de session user existe pour verifier si l'authentification a ete effectuée
if(!isset($_SESSION['user'])){
echo "<center>Il faut être authentifié !</center>";
echo "<meta http-equiv=\"Refresh\" content=\"1;URL=connexion.php\">";
exit();
}
?>
<?php
$_SESSION['categorie']=$_POST['categorie'];
$_SESSION['Login']=$_POST['Login'];
$_SESSION['pw']=$_POST['pw'];
$c=$_POST['categorie'];
if($c==1){$t='eleve';} elseif($c==2 ){$t='maitre';} else{$t='lieu';}
$link=mysql_connect('localhost','root','root');
if (!$link)
{
die ('<p>Impossible de se connecter : '.mysql_error().'<p>');
}
$db=mysql_select_db('gestionstage',$link);
if(!$db) {die ('<p>Impossible utiliser la base : '.mysql_error().'<p>');}
$Login=$_POST['Login'];
$query="select Nom,Prenom,Login,pw from $t where Login='$Login'";
$resultat=mysql_query($query);
if(mysql_num_rows($resultat)==0) { echo" Identifiant Inconnu!";
echo"<a href='index.php'> Retour </a>";}
else
$row=mysql_fetch_array($resultat);
if($row['pw']!=$_POST['pw']){
echo "Mot de Passe Incorrect!";
echo"<a href='index.php'> Retour </a>";}
else {echo"<p> Bienvenue<strong>".$row['Prenom']."".$row['Nom']."</strong>"."</p>";

}
?>
</body>

voilà l'erreur qu'il m'affiche:

Notice: Undefined index: categorie in c:\program files\easyphp1-7\www\gestionetudiant\connexion.php on line 28

Notice: Undefined index: categorie in c:\program files\easyphp1-7\www\gestionetudiant\connexion.php on line 31
Identifiant Inconnu! Retour
Notice: Undefined variable: row in c:\program files\easyphp1-7\www\gestionetudiant\connexion.php on line 47

Notice: Undefined variable: row in c:\program files\easyphp1-7\www\gestionetudiant\connexion.php on line 50

Notice: Undefined variable: row in c:\program files\easyphp1-7\www\gestionetudiant\connexion.php on line 50

Bienvenue
0
mdico Messages postés 100 Statut Membre
 
j'arrive à me connecter mais pas d'authentification c'est à dire meme si je tape le login et mot de pass il m'affiche donc je commence à ameliorer la situation.
seulement si j'arrive à voir quelqu'un d'autre pour aller le plus rapidement possible.
merci
voila ce qu'il affiche

Identifiant Inconnu! Retour Mot de Passe Incorrect! Retour
0
mdico Messages postés 100 Statut Membre
 
bonjour tout le monde
je contenu à demander tjrs aux bonnes volontés de d me depanner.
le probleme est que mes fichiers fonctionnent bien mais il ne m'affiche le message de bienvenue qd je me connecte avec mon login + mdp. et je crois que le problemem se trouve au niveau de cette ligne.

je vous envoi encore le code

<?php session_start();

//test si la variable de session user existe pour verifier si l'authentification a ete effectuée
if(!isset($_SESSION['user'])){
echo "<center>Il faut être authentifié !</center>";
echo "<meta http-equiv=\"Refresh\" content=\"1;URL=connexion.php\">";

exit();
}
?>
<?php
$_SESSION['categorie']=$_POST['categorie'];
$_SESSION['Login']=$_POST['Login'];
$_SESSION['pw']=$_POST['pw'];
$c=$_POST['categorie'];
if($c==1){$t='eleve';} elseif($c==2 ){$t='maitre';}elseif($c==3){$t='stage';} else{$t='lieu';}
$link=mysql_connect('localhost','root','root');
if (!$link)
{
die ('<p>Impossible de se connecter : '.mysql_error().'<p>');
}
$db=mysql_select_db('gestionstage',$link);
if(!$db) {die ('<p>Impossible utiliser la base : '.mysql_error().'<p>');}
$Login=$_POST['Login'];
$query="select Nom,Prenom,Login,pw from $t where Login='$Login'";
$resultat=mysql_query($query);
if(mysql_num_rows($resultat)==0) { echo" Identifiant Inconnu!";
echo"<a href='index.php'> Retour </a>";}
else
$row=mysql_fetch_array($resultat);
if($row['pw']=$_POST['pw']){
echo "Mot de Passe Incorrect!";
echo"<a href='index.php'> Retour </a>";}
else {echo"<p> Bienvenue<strong>".$row['Prenom']."".$row['Nom']."</strong>"."</p>";

}
?>
merci pour votre aide
0
roussos Messages postés 227 Statut Membre 8
 
salut je te donne un code php qui fonctionne c'est à toi de l'adapter à tes besoins

<?php

if(!empty($_POST))
{
// Le login est-il rempli ?
if(empty( $_POST["login"]))
{ $message = 'Veuillez indiquer votre login svp !';
echo htmlspecialchars($_SERVER['REQUEST_URI']); }
// Le mot de passe est-il rempli ?
elseif(empty($_POST["passwd"]))
{
$message = 'Veuillez indiquer votre mot de passe svp !';
echo htmlspecialchars($_SERVER['REQUEST_URI']); }
// Le login est-il correct ?

else {
$login = $_POST["login"];
$passwd = $_POST["passwd"];
mysql_pconnect($BD_serveur, $BD_utilisateur, $BD_passwd)
or die("Impossible de se connecter au serveur de bases de données.");
mysql_select_db($BD_base)
or die("Impossible de se connecter à la base de données.");

$requete = "SELECT * FROM admin ".
" WHERE login='$login' AND passwd='$passwd'";

$result = mysql_query($requete);

if ($enreg = mysql_fetch_array($result)) {

// Si une ligne a été trouvée c'est que le couple
// (identifant, mot de passe) est valide
$_SESSION["admin"] = TRUE;
$_SESSION["adminlogin"] = $login;
//la session est true alors je redirige l'admin vers une page appelée global.php
header("Location: /admin/global.php");

die();
}
/* } else{
$_SESSION["admin"] = FALSE;
//la session est false j'affiche un message d'erreur
$message = 'Mot de passe ou compte erroné Merci de réessayer!';
echo htmlspecialchars($_SERVER['REQUEST_URI']); }

}

?>
bon courage
0