[PHP]Problème d'autentification en PHP

Problème d'autentification en PHP [PHP] - PHP - Programmation

Marsh Posté le 10-05-2013 à 20:09:02    

bonjour j'ai un problème d'identification dans mon site , après la compilation du code PHP il m'affiche cette notification :'Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\simplestyle_57\simplestyle_7\includes\verification_cnx.php on line 8' voila le Code source de 'verification_cnx.php':"<?php
 mysql_connect("localhost","root","" );
 mysql_select_db(" bd_hr_projet" );
 
 if($_POST['Profil']==1){
  $rqt="SELECT * FROM `enseignant` WHERE Login='".$_POST['txt_lgn']."' AND Password='".$_POST['Password']."'";
  $ex=mysql_query($rqt);
  if(mysql_num_rows($ex)>0){
   $res=mysql_fetch_array($ex);
   $_SESSION['Enseignant']=$res['Nom']."&nbsp;&nbsp;".$res['Prenom'];
   $_SESSION['idEnseignant']=$res['idEnseignant'];
  }
 }
 if($_POST['Profil']==2){
  $rqt="SELECT * FROM `etudiant` WHERE CIN='".$_POST['txt_lgn']."' AND Password='".$_POST['Password']."'";
  $ex=mysql_query($rqt);
  if(mysql_num_rows($ex)>0){
   $res=mysql_fetch_array($ex);
   $_SESSION['Etudiant']=$res['Nom']."&nbsp;&nbsp;".$res['Prenom'];
   $_SESSION['CNE']=$res['CNE'];
  }
 }
?>"

et voila la ligne qui affiche cette erreur : if(mysql_num_rows($ex)>0)  
 
merci d'avance :)


Message édité par berkanii le 11-05-2013 à 02:11:21
Reply

Marsh Posté le 10-05-2013 à 20:09:02   

Reply

Marsh Posté le 11-05-2013 à 02:29:17    

Hello,
 
A priori, soit la requete est mauvaise, soit la connexion à la base est mauvaise.
 
http://php.net/manual/fr/function.mysql-query.php
 
En dehors de ce problème, quelques points à approfondir je pense :  
* mysql_ est devenu obsolète, regarde du coté de mysqli_ et PDO (avec une préférence pour le second)
* ta requête n'est pas échappée et donc facilement injectable, on ne peut jamais faire confiance à des données venant de l'exterieur ($_POST dans ton cas)
 
En espérant que cela te permette de résoudre ton problème

Reply

Marsh Posté le 11-05-2013 à 03:49:41    

xaeon a écrit :

Hello,
 
A priori, soit la requete est mauvaise, soit la connexion à la base est mauvaise.
 
http://php.net/manual/fr/function.mysql-query.php
 
En dehors de ce problème, quelques points à approfondir je pense :  
* mysql_ est devenu obsolète, regarde du coté de mysqli_ et PDO (avec une préférence pour le second)
* ta requête n'est pas échappée et donc facilement injectable, on ne peut jamais faire confiance à des données venant de l'exterieur ($_POST dans ton cas)
 
En espérant que cela te permette de résoudre ton problème


Merci beaucoup xaeon pour la réponse , je vais essayer :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed