IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Sécurité] Problèmes avec setcookie


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 60
    Points : 42
    Points
    42
    Par défaut [Sécurité] Problèmes avec setcookie
    Bonjour,

    Dans une page html avec une partie de code en php, lors de l'authentification je sauvegarde le login dans un cookie comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    setcookie("cookieauthentification", "$login");
    Et voici l'erreur que j'ais :

    Warning: Cannot modify header information - headers already sent by (output started at C:\Program Files\wamp\root\ansi.fr\Site html\ansi_fichiers\page0006.php:10) in C:\Program Files\wamp\root\ansi.fr\Site html\ansi_fichiers\page0006.php on line 1064

    J'ais essayé de déclarer le cookie pour ensuite lui donner une valeur mais j'ais le même problème je travail avec un serveur wamp en local.

    Merci

  2. #2
    Membre éprouvé Avatar de macbook
    Inscrit en
    Février 2006
    Messages
    838
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 838
    Points : 1 009
    Points
    1 009
    Par défaut
    C'est hyper classique : Tu as du code en sortie avant la création de ton cookie, et PHP n'aime pas cela -> http://fr2.php.net/manual/fr/function.setcookie.php

    Citation Envoyé par php.net
    setcookie() définit un cookie qui sera envoyé avec le reste des en-têtes. Les cookies doivent passer avant tout autre en-tête (c'est une restriction des cookies, pas de PHP). Cela vous impose d'appeler cette fonction avant toute balise <html> ou <head>. Si quelque chose a été envoyé avant l'appel à cette fonction, setcookie() échouera et retournera FALSE. Si setcookie() réussi, elle retournera TRUE. Cela n'indique pas si le client accepte ou pas le cookie.

    Note : Depuis PHP 4, vous pouvez utiliser la bufferisation de sortie pour pouvoir envoyer du contenu avant d'appeler cette fonction, avec la contrepartie que toute votre page sera envoyée en une fois. Vous pouvez faire cela en appelant ob_start() et ob_end_flush() dans votre script, ou en activant la directive output_buffering dans votre fichier de configuration php.ini.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 60
    Points : 42
    Points
    42
    Par défaut
    Merci,

    cala veut dire que je ne peux pas envoyer de cookie dans une page html normal avec balise <HTML> ?

    ya t'il une autre solution?

  4. #4
    Membre éclairé Avatar de Yobs
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    675
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2004
    Messages : 675
    Points : 846
    Points
    846
    Par défaut
    Sur une page html tu peux toujours envoyer des cookies avec javascript. Tu peux tout aussi bien placé ton setcookie avant ton script php avecta balise <html>

    A toi de voir...

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 60
    Points : 42
    Points
    42
    Par défaut
    Merci,

    mais j'ais éssayé de placer mon setcookie avant ma balise <html>, mais j'ais toujour la même érreur!

  6. #6
    Membre actif
    Inscrit en
    Janvier 2004
    Messages
    242
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 242
    Points : 271
    Points
    271
    Par défaut
    Citation Envoyé par cach
    Merci,

    mais j'ais éssayé de placer mon setcookie avant ma balise <html>, mais j'ais toujour la même érreur!
    debute direct la page avec un <? et surtout pas d'espace ou entré avant.

    Au passage, il manque des arguments a ton setcookie mais ce n'est pas ça qui génere l'erreur.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 60
    Points : 42
    Points
    42
    Par défaut
    Bonjour,

    Merci, j'ais compris, je dépose mon cookie en début de page et je lui donne une valeur en sortie et la ca marche.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec setcookie
    Par nikko_54 dans le forum Langage
    Réponses: 5
    Dernier message: 18/02/2009, 19h42
  2. [Cookies] un problème avec setcookie
    Par ikan87 dans le forum Langage
    Réponses: 3
    Dernier message: 31/05/2007, 15h32
  3. Réponses: 8
    Dernier message: 15/12/2006, 17h15
  4. Réponses: 16
    Dernier message: 18/10/2006, 22h52
  5. [Sécurité] Problème avec des variables de session
    Par zoom61 dans le forum Langage
    Réponses: 28
    Dernier message: 18/08/2006, 21h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo