[php] Connexion bdd, mot de passe/pseudo

Fermé
sim - 3 févr. 2008 à 16:14
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 4 févr. 2008 à 10:53
Bonjour à tous, j'ai un petit probléme pour une connexion par peudo/password avec connexion à un base de donnée mysql.
Le problème est que le script fonctionne, donc n'affiche pas deniled, seulement pour la premiére ligne de la bdd.Si je tape les email/password de la seconde ligne ça ne marche pas (denied). Quelqu'un pourrait il m'expliquer ? merci !!!


Voici le code de ma page:


<?php 
	session_start(); // initialisation de la variable session 
	echo('<?xml version="1.0" encoding="iso-8859-1"?>'); 
?>

<!DOCTYPE html 
     PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
	
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

  <head>
<title>Zspace membres</title>
	<meta http-equiv="Content-Type" content="text/html ; charset=iso-8859-1" />
    <link rel="stylesheet" media="screen" type="text/css" title="Design" href="styles/design.css" />


</head>

<body>
<?php include('menu.php'); ?>

<div id="content">



<?php 

if ((isset($_POST["password"])) AND (isset($_POST["email"] ))) //on teste si les variables existent
	{ $password == $_POST['password'] ; //la variable mdp prds la valeur de ce qui a été tapé
	  $email == $_POST['email'] ; //la variable pseudo prds la valeur de ce qui a été tapé
	}
	else	//sinon
		{ 
		$mot_de_passe = "" ; //la variable prds la valeur vide
		$email =  ""; //la variable prds la valeur vide
		}
		
		

					mysql_connect("db198.1and1.fr", "dbo22sdf4", "068sdf"); // Connexion à MySQL
					mysql_select_db("dbsdf94"); // Sélection de la base 

// On est connectés, on peut travailler sur la BDD

$reponse = mysql_query("SELECT * FROM membres ") or die(mysql_error()); //TOUT les membres

// On fait une boucle pour lister tout ce que contient la table :

while ($membres = mysql_fetch_array($reponse) ) //créé un tableau ordonné avec TOUT les membres, 
{
if ( ($password == $membres['password']) AND ($email == $membres['email']))
	{ 

   $_SESSION['email'] = $email; //pseudo correct donc on garde le pseudo dans la var session
   $_SESSION['password'] = $password;  //mot de passe correct donc on garde le pass dans la var session

	include("copyright.php") ;
	exit();  //il faut arrêter la boucle ! sinon ca va se répéter
	}
	else
	{	
	echo('denied');
	include("copyright.php") ;
	exit();  //il faut arrêter la boucle ! sinon ca va se répéter

	}

}



// On a fini de travailler, on ferme la connexion :
mysql_close(); // Déconnexion de MySQL
?>

	
	
</div> <!-- fin de content !-->
</body>
</html>




Le probléme, c'est que

2 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
3 févr. 2008 à 23:32
Bonsoir,

On t'a déja indiqué dans un précédent post une erreur que tu n'as pas rectifié:

pour qu'une variable prenne la valeur d'une autre il faut = et pas == (qui est un opérateur de comparaison)

if ((isset($_POST["password"])) AND (isset($_POST["email"] ))) //on teste si les variables existent
{ $password == $_POST['password'] ; //la variable mdp prds la valeur de ce qui a été tapé
$email == $_POST['email'] ; //la variable pseudo prds la valeur de ce qui a été tapé
}


remplaces par:

if ((isset($_POST["password"])) AND (isset($_POST["email"] ))) //on teste si les variables existent
	{ $password = $_POST['password'] ; //la variable mdp prds la valeur de ce qui a été tapé
	  $email = $_POST['email'] ; //la variable pseudo prds la valeur de ce qui a été tapé
	}
0