Cookies qui marchent en local mais pas une fois mis en ligne...

Cookies qui marchent en local mais pas une fois mis en ligne... - PHP - Programmation

Marsh Posté le 01-02-2004 à 18:28:59    

J'ai fait :
setcookie("mavariable",$savaleur,time()+365 * 24 * 3600 , "/" );
 
Puis pour récupérer mon cookie :
echo $_COOKIE[mavariable];
 
Ca à l'air tout con et ça marche en local. Par contre dès que je le mets en ligne, ça marche pu :(
 
Zauriez pas une idée siouplé ?


Message édité par format_c le 01-02-2004 à 20:13:57

---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 01-02-2004 à 18:28:59   

Reply

Marsh Posté le 01-02-2004 à 20:49:37    

Reply

Marsh Posté le 01-02-2004 à 20:56:19    

le "/" qui est ptet en trop ...

Reply

Marsh Posté le 01-02-2004 à 22:24:05    

Je vais tenter pour voir :)


---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 01-02-2004 à 22:27:50    

Nope ça change rien, ça marche en local mais toujours pas en ligne :(


---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 02-02-2004 à 10:00:21    

tu fais bien un refresh / header après création du cookie ??


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 02-02-2004 à 10:57:10    

Sh@rdar a écrit :

tu fais bien un refresh / header après création du cookie ??


Un quoi ? :D
J'ai l'impression que le cookie ne se crée même pas :(


---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 02-02-2004 à 11:29:55    

[:sh@rdar]
 
après création d'un cookie, il faut actualiser la page pour pouvoir y accéder, donc utilises un header() pour cela
 
si ça marchais en local c'est certainement du à des rechargements multiples de la page, à chaque fois tu accédais au cookie créé par la page précédente
 

Citation :


Erreurs communes :  
 
Les cookies ne seront accessibles qu'au chargement de la prochaine page, ou au rechargement de la page courante.  
Les cookies doivent être effacés avec les mêmes paramètres que ceux utilisés lors de leur création.  


Message édité par Sh@rdar le 02-02-2004 à 11:31:29

---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 02-02-2004 à 11:43:28    

Ah ok, je comprends !
En fait c'est pas ce pb je pense puisque je crée le cookie sur une page X et que je le lis sur une page Y.
J'ai fait un refresh (F5) plusieurs fois sur chacune de ces pages puis j'ai recommencé la procédure dans l'odre (création/lecture) mais toujours rien :(


---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 02-02-2004 à 11:46:19    

Je viens de virer tous mes cookies pour vérifer et le cookie ne se crée pas :(

Reply

Marsh Posté le 02-02-2004 à 11:46:19   

Reply

Marsh Posté le 02-02-2004 à 12:17:51    

fais péter le code


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 02-02-2004 à 12:57:04    

Peu pas, chuis au boulot là :D
Je fais ça dès que je rentre ce soir ;)
 
ps : sinon le seul code que j'utilise pour les cookies est celui que j'ai posté dans le sujet ;)

Reply

Marsh Posté le 02-02-2004 à 12:58:17    

alors y'a une erreur là : echo $_COOKIE[mavariable];  
 
à moins que mavariable soit une constante bêtement nommée, il manque des quotes


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 02-02-2004 à 13:22:37    

Sh@rdar, l'écho marche très bien en local (easyphp 1.7)
Le pb c'est que le Setcookie ne semble pas fonctionner en ligne. Mon cookie ne se crée même po ;)

Reply

Marsh Posté le 02-02-2004 à 14:42:00    

alors attends ce soir, file une url, et le code (copié collé, pas recopié) parce que là si tu as copié collé ton code, y'a une erreur (manque de quotes)
 
autre question à 2 balles, sur ton site la page de création et de lecture du cookie se situe bien à la racine (vu le path de ton cookie) ?


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 02-02-2004 à 15:38:29    

Sur mon serveur ftp j'ai un rep /www/ qui correspond au rep où je peux uploader mes pages. Et le script est justement dans ce rep.

Reply

Marsh Posté le 02-02-2004 à 21:27:32    

Voici donc le code de la page qui crée le cookie :

Code :
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  4. </head>
  5. <body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" background="img/fondpage.gif">
  6. <?
  7. setcookie("loginhtex",$loginname,time()+365*24*3600);
  8. if ($action=='build')
  9. {
  10. //Je génère un fichier temporaire, c'est pas important pour le cookie
  11. }
  12. ?>
  13. <table width="800" border="0" cellspacing="0" cellpadding="0" height="600" align="center" background="img/fondmenu.jpg">
  14.   <tr background="img/fondmenu.jpg">
  15.     <td>
  16. <script>
  17. function adClick(ad, site){
  18. window.open(ad);
  19. window.location = site;}
  20. </script>
  21.       <p align="center"><a href="javascript:adClick('<? echo $tmpfile; ?>','index.php');" class=corps><img src="img/telecharger.jpg" width="319" height="41" border="0"></a></p>
  22.       <p align="center"><a href="index.php"><img src="img/cancel.jpg" width="192" height="41" border="0"></a></p>
  23.     </td>
  24.   </tr>
  25. </table>
  26. </body>
  27. </html>


Message édité par format_c le 02-02-2004 à 21:30:14

---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 02-02-2004 à 21:51:12    

url avec ce code ? (t'as encore modifié par rapport à ce qu'il y avait plus haut)

Reply

Marsh Posté le 02-02-2004 à 21:54:05    

http://www.htex.net/download.php
 
edit : Ouai, j'ai jarter le "/"


Message édité par format_c le 02-02-2004 à 21:54:37

---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 02-02-2004 à 21:59:15    

pour rappel, setcookie() se fait avant toute sortie html, de plus si il est vide (ie variable $loginname = '') ça l'efface, donc déplace le et met un texte quelconque que j'essaye

Reply

Marsh Posté le 02-02-2004 à 22:08:57    

Je dois le mettre juste avant le </html> ?


---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 02-02-2004 à 22:12:46    

nan, tout en haut de la page avant <html>

Reply

Marsh Posté le 02-02-2004 à 22:12:50    

Bon, je l'ai déplacé avant la balise </html>
 
Ca marche toujours en local et toujours pas online :(


---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 02-02-2004 à 22:13:00    

Ok je recommence :D


---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 02-02-2004 à 22:13:50    

mais sérieux tu le vois pas le message d'erreur en bas ???
 
t'as mis quelque chose dans ta variable $loginname ?


Message édité par Sh@rdar le 02-02-2004 à 22:14:44
Reply

Marsh Posté le 02-02-2004 à 22:14:25    

C'était ça !
 
Merci bcp Sh@rdar :)
edit : il fallait bien le placer avant la balise html  :jap:


Message édité par format_c le 02-02-2004 à 22:14:53

---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 02-02-2004 à 22:16:12    

t'aurais regardé la doc t'avais pas besoin de moi...

Reply

Marsh Posté le 02-02-2004 à 22:19:10    

J'ai suivi mot à mot les cours de http://www.az-php.com mais dedans il n'est nulle part écrit ce que tu m'as expliqué. Et comme ça marchait en local (pkoi d'ailleurs ?), je ne me suis pas posé la question de la Doc. C'est un tord, je le reconnais :(


---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 02-02-2004 à 22:53:49    

ah ouais quand meme ... et ca marche chez toi, tu dis ...

Reply

Marsh Posté le 02-02-2004 à 23:52:06    

Ouep, c'est vraiment bizarre


Message édité par format_c le 02-02-2004 à 23:52:15

---------------
Mes guitares, ampli, et effets sont en vente !
Reply

Marsh Posté le 03-02-2004 à 00:24:02    

c'est plein d'erreur et très approximatif comme approche (requêtes pour login sans quotes donc vulnérables et autres joyeusetés)
 
en tout cas très très en dessous de phpdébutant
 
format_c > laisse tomber tu vas prendre de mauvaises habitudes avec ces cours

Reply

Marsh Posté le 03-02-2004 à 10:09:40    

Bon je vais me retourner vers phpdebutant alos !

Reply

Marsh Posté le 03-02-2004 à 10:36:01    

En fait le cookie est envoyé au client dans le header de la réponse HTTP, et le code HTML c'est envoyé dans le corps de la réponse HTTP  
Donc dès que t'envois du HTML, tu peux plus touché au header puisque il a déjà été envoyé

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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