Bonsoir,

Pour mon site web j'aimerais réaliser une connexion grâce à des identifiants, le reste de mes requête étant en PDO je souhaiterais mettre le code que j'ai trouve en PDO également

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
<?php
$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'" AND pass_md5="'.mysql_escape_string(md5($_POST['pass'])).'"';
$req = mysql_query($sql)
$data = mysql_fetch_array($req);
 
	// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
	session_start();
	$_SESSION['login'] = $_POST['login'];
	header('Location: membre.php');
	exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) {
	$erreur = 'Compte non reconnu.';
}
// sinon, alors la, il y a un gros problème :)
else {
	$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
?>
J'ai un problème pour retranscrire la ligne 4 , j'ai essayer avec un fetch mais je reçois le message d'erreur suivant : "atal error: Call to a member function fetch() on a non-object"


voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
<?php 
 
$sql = "SELECT COUNT(*) FROM user WHERE login=$log AND mdp=$mdpass;";
$donnees= $BDD->query($sql) 
$data = $donnnees->fetchAll();
 
	// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) { 
	session_start(); 
	$_SESSION['login'] = $_POST['login']; 
	header('Location: membre.php'); 
	exit(); 
	} 
 
	// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) { 
	$erreur = 'Compte non reconnu.'; 
	} 
	// sinon, alors la, il y a un gros problème :)
else { 
	$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.'; 
	 }
?>