Impossible de lire un cookie avec la fonction include?

Impossible de lire un cookie avec la fonction include? - PHP - Programmation

Marsh Posté le 04-04-2006 à 10:18:43    

Salut, pour mon site perso, j'utilise des cookies (miam   )

 

Alors voila: avant, j'avais dans mon fichier index.php un code du style:

 
Code :
  1. <html>
  2. <body>
  3.     <?php
  4.          if($_COOKIE["moncookie"])
  5.         {
  6.             echo "Cookie OK.";
  7.         }
  8.         else
  9.         {
  10.             echo "Cookie NOK.";
  11.         }
  12.     ?>
  13. ...
 

Ce
code, permettant de savoir si le visiteur est identifié marchais bien,
mais comme cette opération est répétée sur chaque pas de mon site, j'ai
décidé d'inclure un fichier .

 

J'ai donc créé un fichier connexion.php:

 
Code :
  1. <?php
  2.     if($_COOKIE["moncookie"])
  3.     {
  4.         echo "Cookie OK.";
  5.     }
  6.     else
  7.     {
  8.         echo "Cookie NOK.";
  9.     }
  10. ?>


Et dans mon fichier index.php, j'ai mis ça:

 
Code :
  1. <html>
  2. <body>
  3.     <?php include('fichiers/connexion.php'); ?>
  4. ...


Depuis
que j'ai fais ça, l'identification ne fonctionne pas, il semble que le
fichier connexion.php n'arrive pas à lire le cookie...

 

Comment je pourrais résoudre ce problème?

 

PS: le cookie est bien créé...

Reply

Marsh Posté le 04-04-2006 à 10:18:43   

Reply

Marsh Posté le 04-04-2006 à 10:35:18    

renomme d abord connexion.php en connexion.inc, sinon il est accessible du web.

Reply

Marsh Posté le 04-04-2006 à 11:11:58    

nargy a écrit :

renomme d abord connexion.php en connexion.inc, sinon il est accessible du web.


 
c'est le contraire  :whistle: c'est le fichier inc qui est visible du net, pas le PHP :D


---------------
CPU-Z | Timespy | Mes bd
Reply

Marsh Posté le 04-04-2006 à 11:43:48    

ha? ouais peut être bien... je les ai mis dans un répertoire spécial avec config apache forbidden, jamais essayé tel quel.

Reply

Marsh Posté le 04-04-2006 à 11:52:43    

En fait c'est simple, dans apache, on interprete uniquement les fichier .php donc les inc sont vu comme de simple fichier texte, d'ou la nécésité de les mettre en .inc.php (sauf si on fait intérprété les .inc comme des .php avec apache)


---------------
CPU-Z | Timespy | Mes bd
Reply

Marsh Posté le 04-04-2006 à 13:53:29    

franchement le coup des inc ... quand vous avez une page unique qui va inclure toutes les autres en fonction des demandes ... moi perso ça me gave d'avoir un script en .php et tous les autres en .inc.php :p

Reply

Marsh Posté le 04-04-2006 à 13:56:44    

a priori les .inc n ont pas à être interprétés tels quels. c est php qui s occupe de les interprétés dans un include(). ils n ont pas à être téléchargés non plus, et tu as raison par défaut apache considère les .inc comme des fichiers textes, il est necessaire de reconfigurer apache pour en interdire le téléchargement.
 
sinon, désolé gaadek, ça ne fait pas vraiment avancer ton problème tout ça. je ne vois pas l erreur.
 
Peut être est-ce au moment du setCookie(), qui doit être utilisé avant toute sortie de programme avec echo ou autre?

Reply

Marsh Posté le 04-04-2006 à 18:54:36    

Merci nargy (et les autres aussi, même si on est en plein H.S)!!!

 

Pour le SetCookie, je confirm, il est bien fait.
Les preuves:
- Firefox me trouve bien le cookie
- Si je remet le code qui lit les infos du cookie dans la page index.php, tout fonctionne correctement

Reply

Sujets relatifs:

Leave a Replay

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