Authentification en Php5

Résolu
Tar06 Messages postés 120 Date d'inscription vendredi 27 mars 2015 Statut Membre Dernière intervention 5 juillet 2023 - Modifié par Tar06 le 9/04/2015 à 13:01
Tar06 Messages postés 120 Date d'inscription vendredi 27 mars 2015 Statut Membre Dernière intervention 5 juillet 2023 - 9 avril 2015 à 16:47
Bonjour,
j'ai en petit problème c'est que j'arrive pas a mon page Acceuil.php , quand j emet le login et le mot de passe il me dit que le mot de passe incorrect qui est gérer par une Authentification voici le code regarder s'il vous plait et détecter s'il y a une erreur
la table sql
CREATE TABLE IF NOT EXISTS `personnel` (
`Id` int(11) NOT NULL AUTO_INCREMENT,
`nom` varchar(155) NOT NULL,
`prenom` varchar(120) NOT NULL,
`login` varchar(110) NOT NULL,
`password` int(11) NOT NULL,
`profil` varchar(144) NOT NULL,
PRIMARY KEY (`Id`),
UNIQUE KEY `password` (`password`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

--
-- Contenu de la table `personnel`
--

INSERT INTO `personnel` (`Id`, `nom`, `prenom`, `login`, `password`, `profil`) VALUES
(1, 'tah', 'slam', 'id3', 1990, 'admin'),
(2, 'Toutah', 'Moctar', 'tah', 1922, 'user');

Code php connexion a la base de donnee

<?php
if(isset($_POST['connexion']) && $_POST['connexion']=='Connexion'){
$idcon=mysql_connect("localhost","root","");
mysql_select_db("gestion_personnel",$idcon);
$profil=$_POST['profil'];
$login=$_POST['login'];
$password=$_POST['password'];
$reqet=("select * from personnel where Login='$login' and Password='$password' and Profil='$profil'");
$reqet1=mysql_query($reqet)or die("".mysql_error());
$resul=0;
$dep="";
while($res=mysql_fetch_row($reqet1)){
$resul++;
$dep=$res['1'];
}
if($resul>0){
if($profil==1) {
header('Location:Acceuil.php');
}
if($profil==2) {
header('Location:idex.php?log='.$login.'&pass='.$password.'&profil='.$profil.'&dep='.$dep);
}
}
else { echo "<script>alert('le mot de pass ou le password est incrrect');</script>";
}

}
?>

1 réponse

jordane45 Messages postés 38137 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 344
9 avril 2015 à 13:03
Bonjour,

Commence par changer l'extension mysql que tu utilises....
mysql_* .. est obsolète ... mieux vaut passer par le PDO.
Voici un peu de lecture :
http://www.commentcamarche.net/faq/43261-php-l-extension-mysql-est-obsolete#top

Fais également du débogue en ajoutant un PRINT_R($_POST) au début de ton code pour voir ce que ta page reçoit comme variables... cela te permettra de voir si elles sont bien conformes à ce que tu attends.

Et places la connexion à ta BDD dans un fichier à part que tu appelles lorsque tu en as besoin ( par exemple un fichier nommé : connexion_BDD.php )

<?php

// affichage des erreurs PHP
 ini_set('error_reporting', E_ALL & ~E_NOTICE);

//connexion à la BDD
require_once "connexion_BDD.php";

//---------------------------------------//
// Le temps des tests :
//---------------------------------------//
 echo "<pre> POST :<br>";
 print_r($_POST);
echo "</pre><br>";
//---------------------------------------//

// Récupération des variables :
$connexion = isset($_POST['connexion']) ? $_POST['connexion'] : NULL;
$profil= isset($_POST['profil'])?$_POST['profil']:NULL;
$login=isset($_POST['login'])?$_POST['login']:NULL;
$password=isset($_POST['password'])?$_POST['password']:NULL;

// Début de traitement.....
 if($connexion  && connexion=='Connexion'){


   //.... Le suite de ton code.





0
Tar06 Messages postés 120 Date d'inscription vendredi 27 mars 2015 Statut Membre Dernière intervention 5 juillet 2023
9 avril 2015 à 15:40
Merciiiiiiiii jordane45 , j'ai trouvé l'erreur
0
jordane45 Messages postés 38137 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 344 > Tar06 Messages postés 120 Date d'inscription vendredi 27 mars 2015 Statut Membre Dernière intervention 5 juillet 2023
9 avril 2015 à 16:37
Si la question est résolue..
Merci de ne pas oublier de clôturer le sujet
(en cliquant sur le lien "Marquer comme résolu" qui se trouve sous le titre de la question)

PS : Ca serait sympa de nous dire quel était le souci. Ca pourrait servir à d'autres internautes qui rencontreraient les mêmes difficultés que toi.


Bonne continuation.

Cordialement,
Jordane
0
Tar06 Messages postés 120 Date d'inscription vendredi 27 mars 2015 Statut Membre Dernière intervention 5 juillet 2023 > jordane45 Messages postés 38137 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024
9 avril 2015 à 16:47
Oui vous avez raison j'ai oublié, je m'excuse et l'erreur etait facile j'avais mal écrit le nom de la base de donne dans le code de la connexion
Meciiiiiiiiiiiiiiiiiiiiiiiii infiniment Jordane45
0
Rejoignez-nous