Probleme de SetCookie sur multimania et free

Probleme de SetCookie sur multimania et free - PHP - Programmation

Marsh Posté le 08-03-2004 à 11:14:59    

Bonjour,
 
je viens de me décider à tester mon site perso sur multimania, et là, alors que la fonction de login marchait parfaitement en local, ici ca ne passe plus...  
 
qd je rentre le bon login et pass il me confirme "vous avez bien été identifié" mais me renvoie ensuite sur la page de login comme si le cookie n'avait pas été écrit, et apres vérif en effet il n'est pas écrit, alors que le meme code en local marche nickel :o ... pour info voici le code de ma fonction de login...
 
 

Code :
  1. $false=0;
  2. $bd=new BD(NOM, PASS, SERVEUR, BASE);
  3. $req=$bd->req_exe("select login, pass from users where login='{$_POST['login']}'" );
  4. $data=$bd->objetSuiv($req);
  5. if($data->login == $_POST['login'] && $_POST['login']!="" )
  6. {
  7. if($data->pass == $_POST['pass'] and $_POST['pass']!="" )
  8. {
  9.  // if(isSet($_POST['cookie']))
  10.  // {
  11.  SetCookie("login",$data->login,time()+365 * 24 * 3600 , "/" );
  12.  SetCookie("pass",$data->pass,time()+365 * 24 * 3600 , "/" );
  13.  //}
  14.  // else
  15.  // {
  16.  //SetCookie("login",$data->login);
  17.  //SetCookie("pass",$data->pass);  
  18.  //}
  19.  echo "<META http-EQUIV=\"Refresh\" CONTENT=\"2; url=admin.php\">";
  20. }
  21. else
  22. {
  23.  $false=1;
  24. }
  25. }
  26. else
  27. $false=1;
  28. entete("Connexion au site" );
  29. echo div("redirect" );
  30. if($false==1)
  31. echo texte("Login ou mot de passe non valide.","gras" );
  32. else
  33. echo texte("Vous avez bien été identifié, ".$data->login,"gras" );
  34. echo findiv();


 
 
merci !


---------------
SHOOT ME AGAIN WEBZINE
Reply

Marsh Posté le 08-03-2004 à 11:14:59   

Reply

Marsh Posté le 08-03-2004 à 11:22:04    

et voici donc la partie de ma page "admin.php" qui contient le formulaire de login qui renvoie vers la page login.php donc le code est dans le 1er post...
 
 

Code :
  1. if (isSet($_COOKIE['login']))
  2. {
  3. $req=$bd->req_exe("select login, pass from users where login='{$_COOKIE['login']}'" );
  4. $data=$bd->objetSuiv($req);
  5. if($data->pass == $_COOKIE['pass'])
  6.  $log=1;
  7. else
  8.  $log=-1;
  9. }
  10. if(!isSet($_COOKIE['login']) or $log==-1)
  11. {
  12. echo div("login2" );
  13. $form= new Formulaire("POST","login.php" );
  14. // $form->debTable(VERTICAL);
  15. $form->champTexte(texte("Login : ","petitgras" ),"login", "", 15, 10);
  16. $form->champPass(texte("Pass : ","petitgras" ),"pass", "", 15, 10);
  17. // $form->champCase(texte("Mémoriser","petit" ),"cookie", "", array("ok"=>"" ));
  18. $form->champValider("Valider", "" );
  19. // $form->finTable();
  20. $form->fin(); echo findiv();
  21. echo div("loginlien" );
  22. echo lien("index.php","Cliquez ici pour accéder à la section visiteurs","petitlien" );
  23. echo findiv();
  24. }


---------------
SHOOT ME AGAIN WEBZINE
Reply

Marsh Posté le 08-03-2004 à 11:22:55    

est-ce que l'utilisation des classes pourrait etre une cause du probleme ou rien a voir? :??:


---------------
SHOOT ME AGAIN WEBZINE
Reply

Marsh Posté le 08-03-2004 à 12:23:15    

et avec cette requete :
"select login, pass from users where login='".$_COOKIE['login']."'"
 
y a 2 raisons possibles pour que tu sois pas loggué :
* !isset($_COOKIE['login'])
* $log==-1
 
Faudrait savoir lequel de ces cas apparait.


Message édité par ratibus le 08-03-2004 à 12:25:06
Reply

Marsh Posté le 08-03-2004 à 12:30:32    

bin ici en l'occurence c'est le cas * !isset($_COOKIE['login']) vu que le cookie existe pas :/


---------------
SHOOT ME AGAIN WEBZINE
Reply

Marsh Posté le 08-03-2004 à 14:02:08    

help :o


---------------
SHOOT ME AGAIN WEBZINE
Reply

Marsh Posté le 08-03-2004 à 23:11:20    

:sweat:


---------------
SHOOT ME AGAIN WEBZINE
Reply

Marsh Posté le 09-03-2004 à 00:00:50    

bon sur la page free, j'ai un warning [:le kneu]
 
 
ca dit ca :
 
 

Code :
  1. <b>Warning</b>:  Cannot modify header information - headers already sent by (output started at /var/www/free.fr/a/2/anchorx/table.php:3) in <b>/var/www/free.fr/a/2/anchorx/login.php</b> on line <b>25</b><br />
  2. <br />
  3. <b>Warning</b>:  Cannot modify header information - headers already sent by (output started at /var/www/free.fr/a/2/anchorx/table.php:3) in <b>/var/www/free.fr/a/2/anchorx/login.php</b> on line <b>26</b><br />


 
 
 
alors que bon je retourne le code dans tous les sens et jcrois vraiment pas envoyer qqch au navigateur avant les SetCookie... qqun a une idée ? :??:


---------------
SHOOT ME AGAIN WEBZINE
Reply

Marsh Posté le 09-03-2004 à 01:14:29    

J'ai trouvé [:youpi]
 
 
j'ai juste viré un require_once qui posait probleme, mais pourtant rien dans cette page n'envoyait qqch vers le navigateur... mais bon cai pas grave !


---------------
SHOOT ME AGAIN WEBZINE
Reply

Marsh Posté le 09-03-2004 à 11:40:07    

tu devais avoir des caractères dans ton fichier PHP après la balise de fin ?> (on le voit pas forcément)

Reply

Marsh Posté le 09-03-2004 à 11:40:07   

Reply

Marsh Posté le 09-03-2004 à 12:10:43    

genre un retour à la ligne après le "?>"


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Sujets relatifs:

Leave a Replay

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