pb essai espace membre

pb essai espace membre - PHP - Programmation

Marsh Posté le 19-07-2005 à 16:53:05    

je tente de réaliser un espace tout simple, (la bdd est déjà donnée), on rentre son nom  et son pass dans les champ de saisies puis la requete sql vérifie si le nom et le pass existent si oui elle met le petit message merci de vous être logué et on clique pour passer dans la page membre, ça marche très bien. après j'ai voulu mettre un else pour afficher un message vous n etes pas autorisé à voir cette page et là premier problème lorsque je me log avec un mot qui ne correspond pas il affiche rien alors qu'il devrait afficher le message vous n'étes pas autorisé à voir cette page. Je me doute que c'est pas le top de la sécurité mais bon je préfère progresser tranquilement plutôt que de pomper bêtement un espace membre avec les sessions que je ne maîtrise pas encore.
Mais là ce genre d'erreur est un peu énervante je vois pas pourquoi il veut pas prendre le else
 
 
<html>
 
<title>
acces
</title>
 
<body>
 
<?php
mysql_connect("localhost", "root" );
mysql_select_db("autorisation" );
$reponse=mysql_query("SELECT nom FROM autorisation WHERE nom='$_POST[nom]' and pass='$_POST[pass]'" );
while ($donnees=mysql_fetch_array($reponse))
{
?>
<?php
if($donnees!=NULL)
{
echo"merci de vous être loggué pour accéder à la page membre ";
echo'<A HREF="membre.php"> cliquer ici</A>';
}
else
{
echo"vous avez pas acces à la page membre";
}
 
}
mysql_close();
?>
</body>
</html>
 
je vous remercie d'avance pour vos réponses


Message édité par Mac_Fly37 le 19-07-2005 à 17:39:34
Reply

Marsh Posté le 19-07-2005 à 16:53:05   

Reply

Marsh Posté le 19-07-2005 à 17:00:51    

mysql_connect("localhost", "root" );
mysql_select_db("autorisation" );
$reponse=mysql_query("SELECT nom FROM autorisation WHERE nom='$_POST[nom]' and pass='$_POST[pass]'" );
if(mysql_num_rows($reponse) == 1)
{
echo"merci de vous être loggué pour accéder à la page membre ";
echo'<A HREF="membre.php"> cliquer ici</A>';
}
else
{
echo"vous avez pas acces à la page membre";
}

Reply

Marsh Posté le 19-07-2005 à 17:28:28    

merci beaucoup


Message édité par Mac_Fly37 le 19-07-2005 à 17:28:38
Reply

Marsh Posté le 19-07-2005 à 17:33:40    

Avec un select count(*) c'est plus rapide.
 
Et avec du mysql_real_escape_string c'est encore mieux.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Sujets relatifs:

Leave a Replay

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