Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1684 connectés 

 


Dernière réponse
Sujet : Petit probleme de cookies en ASP...
TontonVader Quand tu places un response.write, tu envoies implicitement les en-tetes HTTP. Les cookies devant êtres envoyés dans l'en-tete HTTP, quand tu mets response.cookie, tu renvoies en fait l'en-tete HTTP, donc le serveur te jette.
 
Si tu n'as vraiment pas d'autre moyen de mettre ton response.cookie avant le premier response.write (quand je dis response.write, ca veut aussi dire les <%= %> et les textes hors du code ASP), alors tu dois bufferiser ta page, en mettant en PREMIER :  
Response.Buffer=true

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
TontonVader Quand tu places un response.write, tu envoies implicitement les en-tetes HTTP. Les cookies devant êtres envoyés dans l'en-tete HTTP, quand tu mets response.cookie, tu renvoies en fait l'en-tete HTTP, donc le serveur te jette.
 
Si tu n'as vraiment pas d'autre moyen de mettre ton response.cookie avant le premier response.write (quand je dis response.write, ca veut aussi dire les <%= %> et les textes hors du code ASP), alors tu dois bufferiser ta page, en mettant en PREMIER :  
Response.Buffer=true
MagicBuzz il y a moyen de jouer avec les buffer...
mais bon, c'est chaud et ça sert pas à grand chose.
MagicBuzz en fait, c'est simple...
 
les response.cookies doivent être envoyés avant tout aurte donnée au navigateur...
le fait de mettre un response.write avant fait tout sauter...
c'est comme les response.redirect
Lord II Tout simplement parceque quand tu fais un response tu envoie des choses vers le navigateur. En php tu peux passer par un buffer intermediaire que tu peux gerer mais en ASP je sais pas. Bref le truc c'est de faire aucune sorti vers le navigateur avant d'envoyer les cookies ou d'ecrire dans les headers
pink floyd <%  
if Request.cookies.count = 0 then  
    Response.cookies("howmany" ) = 1
    Response.Write "Test : premiere visite !"
else
    Response.cookies("howmany" ) = Request.cookies("howmany" ) + 1
    Response.Write "Test : autre visite !"
end if
%>
 
*************************
 
Merci Lord II
 
now ca marche, maintenant j`essaye de comprendre pourquoi !!!
 
( le code ci-dessus est celui qui fonctionne)
 
enfin bref merci  :love:     :bounce:
Lord II Un seul espace, ou alors un response.write qui traine je vois que tu as mis certain en commentaire. Si la page t'affiche C'est votre première visite c'est que le response n'est pas en commentaire. A mon avis il faut que tu inverse le response.write te le response.cookies
pink floyd <%  
if Request.cookies.count = 0 then  
    'Response.Write "C`est votre premiere visite !"
    Response.cookies("howmany" ) = 1
else
    'Response.Write "Bienvenue ! je vois que vous etes deja venu ici :"
    Request.cookies("howmany" )
    'Response.Write "fois."
    Response.cookies("howmany" ) = Response.cookies("howmany" ) + 1
end if
%>
 
<html>
<head>
<title>Login</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
 
<body bgcolor="#FFFFFF">
<p> </p>
 
 
******************************************************************
 
Ben voila quand je fais ca je recois ca :
C`est votre premiere visite !  
Response object error 'ASP 0156 : 80004005'  
 
Header Error  
 
/denis/login.asp, line 4  
 
The HTTP headers are already written to the client browser. Any HTTP header modifications must be made before writing page content.  
 
 
Heu pourtant il n`y a rien avant mon code ASP donc ca peut venir d`ou ???
 
MErci d`avance car la je comprend rien  :spookie:

Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR