[PHP] Setcookie et header("location:...") Problème???????

Setcookie et header("location:...") Problème??????? [PHP] - Programmation

Marsh Posté le 16-10-2001 à 08:50:08    

J'ai un pti problème car à chaque fois que mon script php essai d'envoyer des en-têtes header  et un setcookie, le serveur me dit que les en-tête header ont déjà été envoyées et donc qu'il n'est pas possible de l'envoyer.
 
 
 :eek2: J'ai peur      :sweat: kes kis pass

Reply

Marsh Posté le 16-10-2001 à 08:50:08   

Reply

Marsh Posté le 16-10-2001 à 12:52:35    

ben effectivement le setcookie doit être la première instruction avant le flux envoyé sur http (cad dire avant le moindre balise HTML ou la moindre ordre HTTP)
 
c'est pkoi t'as ce message ;)

 

[edtdd]--Message édité par m@nou--[/edtdd]


---------------
Mes photos,Feed-Back HA/V
Reply

Marsh Posté le 16-10-2001 à 13:58:22    

Oui mais en fait le setcookie est envoyer avant même que du code html apparaîssse idem pour header.
 
Je veux envoyer l'utilisateur sur une autre page http://  une fois que la page démarre et envoyer en^même tps un cookie
 
voilà mon code:
 
 
  if($reponseI=='1';){
   $id=$valeursI[id];
   setcookie("intranet",$id,time()+3600);  
   header ("location: http://www.xxx.fr" );
   }
  else{
   print("<font color=\"red\"><b>VOUS N'AVEZ PAS ETE RECONNU REESSAYEZ OU CONTACTER VOTRE ADMINISTRATEUR</b></font>" );
   }

Reply

Marsh Posté le 16-10-2001 à 14:17:44    

essaye de mettre ton cookie avec  
header("Set-Cookie: nomvar=valeur; path=/; expires=$expireDate" );
 
avec $expireDate qui ressemble à  
 
$expireDate = gmdate("D, d-M-Y H:i:s", time()+ duréeensecondes) . " GMT";

Reply

Marsh Posté le 16-10-2001 à 14:18:17    

il faut que tu n'aies rien avant ton code, meme pas un espace :na:  
 
_______________________________________________ debut du fichier
<?
if($reponseI=='1';){  
  $id=$valeursI[id];  
  setcookie("intranet",$id,time()+3600);  
  header ("location: http://www.xxx.fr" );  
  }  
 else{  
  print("<font color=\"red\"><b>VOUS N'AVEZ PAS ETE RECONNU REESSAYEZ OU CONTACTER VOTRE ADMINISTRATEUR</b></font>" );  
  }
?>

Reply

Marsh Posté le 16-10-2001 à 15:00:02    

tu veux dire même pas un espace à l'interieur du code php
ou koi

Reply

Marsh Posté le 16-10-2001 à 15:03:54    

nono, pas d'espace avant le <?
 
si c'est pas ca, ben je sais pas. Sorry

 

[edtdd]--Message édité par art_dupond--[/edtdd]

Reply

Marsh Posté le 16-10-2001 à 15:05:25    

oui c bien ce ke j'ai fait.voila le mess d'erreur:
 
Warning: Oops, php3_SetCookie called after header has been sent in your script on line 11
 
Warning: Cannot add more header information - the header was already sent (header information may be added only before any output is generated from the script - check for text or whitespace outside PHP tags, or calls to functions that output text) in your script on line 12

Reply

Marsh Posté le 16-10-2001 à 15:06:45    

en fait le setcookie est en ligne 11 et le header("location:www.rien.com" ); est en ligne 12
 
j'y comprend plus rien

Reply

Marsh Posté le 16-10-2001 à 15:09:00    

yep, c'est bizarre.
 
 
Tu peux mettre le début de ton script. On sait jamais...

Reply

Marsh Posté le 16-10-2001 à 15:09:00   

Reply

Marsh Posté le 16-10-2001 à 15:11:11    

oui est-ce que ça peut venir du fait que j'appelle une fonction au tout début. regarde:
 
 
include("fonction.inc.php3" );
connect_mlchalonnais();
if ($action=="intranet" ){
 $requeteI="SELECT * FROM personnelML WHERE nom='$login' AND code=password('$code';)";
 $resultatI=mysql_query($requeteI);
 $reponseI=mysql_num_rows($resultatI);
 $valeursI=mysql_fetch_array($resultatI);
  if($reponseI=='1';){
   $id=$valeursI[id];
   setcookie("intranet",$id,time()+3600);  
   header("location: http://scabs.forez.com" );

Reply

Marsh Posté le 16-10-2001 à 15:13:02    

Ben pit-être que ca vient de là.
 
Si t'envoies quelque chose dedans, ben c'est pas bong

Reply

Marsh Posté le 16-10-2001 à 15:15:19    

mon fichier fonction.inc.php3 me permet de décrire une fonction pour se connecter au serveur de base de donnés.
je vais essayer de voir si manuellement (efin en mettant tout)ça marche ou pas
 
mais sur un autre script j'ai déjà utilisé cette méthode et ça marchait.c bizarre

Reply

Marsh Posté le 16-10-2001 à 15:16:14    

envoie toujours ton 'fonction.inc.php3' pour voir
 
ps : n'oublie pas de masquer le pass et tout et tout

 

[edtdd]--Message édité par art_dupond--[/edtdd]

Reply

Marsh Posté le 16-10-2001 à 15:21:03    

c bizarre
 
Caaa marche qd je met mysql_pconnect($host,$user,$password)
et mysql_select_db  à la place de include (fonction.inc.php3);
 
 
le pb vient de ce fichier

Reply

Marsh Posté le 16-10-2001 à 15:22:11    

ben a mon avis, c'est que tu dois avoir mis des espaces avant ou après les <? et ?>...

Reply

Marsh Posté le 16-10-2001 à 16:15:54    

voilà ce qu'il y a ds fonction.inc.php3
 
<?
function connect_mlchalonnais(){
 $host ="localhost";
 $base ="user";
 $user ="user";
 $password ="password";
 mysql_pconnect($host,$user,$password);
 mysql_select_db($base);
}
?>

Reply

Marsh Posté le 16-10-2001 à 16:21:22    

ben s'il n'y a pas d'espace avant le <?
ni après le ?> ben je vois pas.

Reply

Sujets relatifs:

Leave a Replay

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