SETCOOKIE

Fermé
kino76 - 9 nov. 2010 à 17:20
 Twinpics - 9 nov. 2010 à 18:43
Bonjour,

j'ai un problème avec la fonction setcookie

je voudrais lui faire prendre soit une valeur soit une autre selon ce que la requête me renvoi comme valeur je vous met mon code

--------------------------------------------------------------------------------------------------------------
<?

include 'connexionbdd.php';

//connexion a la base de donnee

connect();

//recuperation des variables de pageconnexion.html

$login=$_POST['login'];
$passwd=$_POST['password'];

//verification du login

$requete="SELECT * from user where identifiant='$login'";
$resultat=mysql_query($requete);
$count=mysql_num_rows($resultat);

if ($count == 0)
{
echo 'Login incorrect';
}

//verification du password

$requete1="SELECT * from user where password='$passwd'";
$resultat1=mysql_query($requete1);
$count1=mysql_num_rows($resultat1);

if ($count1 == 0)
{
echo 'Mot de Passe incorrect';
}

//verification si login correspon a password

$requete1="SELECT * from user where password='$passwd' AND identifiant='$login'";
$resultat1=mysql_query($requete1);
$count1=mysql_num_rows($resultat1);

if ($count1 == 1)
{
$log=1;
$pwd=1;
}

//verification si utilisateur est un superadmin

if ($log=1 AND $pwd=1)
{
$requete4="SELECT * from user where password='$passwd' AND identifiant='$login' AND superadmin=1";
$resultat4=mysql_query($requete4);
$count4=mysql_num_rows($resultat4);

if ($count4 ==1)
{
$superadmin=1;
setcookie("superadmin", $superadmin, time()+7200);
}
else if ($count4 ==0)
{
$user=2;
setcookie("user", $user, time()+7200);

}




}

if ($log=1 AND $pwd=1)
{

setcookie( "Log" , $login, time() + 7200 ) ;
setcookie("Pwd", $passwd, time() + 7200) ;
require 'pageacceuil.php';
}


?>
--------------------------------------------------------------------------------------------------------------
Le problème c'est que le programme ne tiens pas compte des IF et ELSE IF il me crée directement deux cookies.... comment faire?

3 réponses

Bonsoir,
Une usine à gaz ton script !!! Un script qui pourrait fonctionner sur 10 lignes, tu en a fait quelques unes de trop...
C'est NORMAL qu'il te créé DIRECTEMENT 2 cookies parce que la condition est vraie chaque fois que le login et le password sont trouvés dans la table et comme cette condition est la dernière du script, tu obtiens 2 jolis cookies
if($log=1 AND $pwd=1) {
	setcookie( "Log" , $login, time() + 7200 ) ; 
	setcookie("Pwd", $passwd, time() + 7200) ; 
	require 'pageacceuil.php'; 
}

-------------------------------------------------------------------------------------------------------------------------------------------------
<* Suivez-moi sur FesseS-BouC *>
0
je ne parle pas de ces cookies la excuse moi j'ai oublié de preciser mais des cookies contenue dans
if ($log=1 AND $pwd=1)
{
$requete4="SELECT * from user where password='$passwd' AND identifiant='$login' AND superadmin=1";
$resultat4=mysql_query($requete4);
$count4=mysql_num_rows($resultat4);

if ($count4 ==1)
{
$superadmin=1;
setcookie("superadmin", $superadmin, time()+7200);
}
else if ($count4 ==0)
{
$user=2;
setcookie("user", $user, time()+7200);

}
0
if($log=1 AND $pwd=1) {
	$select="SELECT * FROM user WHERE password='$passwd' AND identifiant='$login' AND superadmin=1";
	$query=mysql_query($select)or die(mysql_error());

	if(mysql_num_rows($query) != 0) {
		$superadmin=1;
		setcookie("superadmin", $superadmin, time()+7200);
	} else {
		$user=2;
		setcookie("user", $user, time()+7200);
	}
}

PS : table MySQL TRES mal construite
Exprime-toi plus clairement lorsque tu énonces un problème, ça te sera très utile dans ta vie de tous les jours.
-------------------------------------------------------------------------------------------------------------------------------------------------
<* Suivez-moi sur FesseS-BouC *>
0