Problème d'un setcookie, dans un WHILE

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Problème d'un setcookie, dans un WHILE

Re: Problème d'un setcookie, dans un WHILE

par niuxe » 05 janv. 2014, 23:52

Bonsoir,

Ton while ne sert strictement à rien sauf pour pomper de la ressource. Puisque tu récupères une seule ligne, quel est l'intérêt du while ? Dans un autre cas de figure et si tu avais eu à insérer des données venant de la base dans un cookie :

Code : Tout sélectionner

while ($donnees = mysql_fetch_array($existence) ) { $dataUser[] = $donnees['user']; //etc. } setcookie('user',serialize($dataUser));

Problème d'un setcookie, dans un WHILE

par auclairp » 05 janv. 2014, 23:43

Bonjour,

J'ai créer un code PHP afin de m'authentifier sur mon site utilisant des Cookies. Le problème est que mon setcookiene fonctionne pas adéquatement.

Lorsque je le place avant le WHILE il n'y a pas de problème, mais pas très utile pour désigner une donnée d'après la BDD. Mais lorsque je le place à l'intérieur du WHILE ça ne fonctionne plus. La requête est bien exécutée puisque le (echo $logs_user;) s'affiche correctement.

	// ACCES VIA LE USER ET MOT DE PASSE
	if (isset($_POST['login']))
	{
		$user = $_POST['username'];
		$pass = $_POST['password'];	
	
		// VÉRIFICATION DE L'IDENTITÉ DE L'USAGER
		$existe = "SELECT * FROM acces WHERE user='". $user ."' AND pass='". $pass ."'";
		$existence = mysql_query($existe);
		
		if(mysql_num_rows($existence) == 1)
		{
		setcookie("test01","test01");       // FONCTIONNE CORRECTEMENT
		while ($donnees = mysql_fetch_array($existence) )
			{
//			setcookie("test02","test02");	// NE FONCTIONNE PASS
			setcookie("user", $donnees['user']);    // NE FONCTIONNE PASS
			
			$logs_user = $donnees['user'];	
			echo $logs_user;            // FONCTIONNE CORRECTEMENT  
			} 
		$message = "Authentification acceptée --> <a href='login2.php'>ENTRER - ICI</a>";
//		header('Location: ./login2.php');										  
		}
Je suis vraiment à cours d'idée, pouvez vous m'aider, MERCI !!!