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 :

setter un cookie


Sujet :

Langage PHP

  1. #21
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    le var_dump rend quoi ?

  2. #22
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Citation Envoyé par laurentSc
    j'ai bien une page dédiée (action_connexion.php)
    Je me suis basé sur le premier code que tu nous as fourni.

    Sinon, vide les cookies déjà placés par le navigateur et ensuite execute à nouveau le script pour voir.

  3. #23
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Je n'avais pas fait de var_dump vu que j'avais regardé sous FF, mais là, je l'ai rajouté et le résultat est différent d'avec FF :
    var_dump=array(5) { ["__utma"]=> string(54) "26646200.1233947815.1310034954.1310075466.1310166983.4" ["__utmz"]=> string(69) "26646200.1310034954.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)" ["telepatia"]=> string(0) "" ["annotazioni"]=> string(0) "" ["PHPSESSID"]=> string(32) "f3a763ca56dba97dadcfcfb8d6fe2d63" }
    Les 2 premiers sont aussi signalés par FF, les 2 suivants sont en italien (mais ils sont vides) : il faut savoir que je travaille avec un italien (qui baragouine le français) et que mon site est placé au même endroit que le sien, donc ces cookies n'ont peut-être pas été "settés" par mon site. Et d'ailleurs, le mien (connecte) qui était signalé par FF ne l'est pas ici.
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  4. #24
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Après avoir vidé le cache, il y a beaucoup moins de cookies, mais toujours pas le mien : var_dump :
    var_dump=array(1) { ["PHPSESSID"]=> string(32) "f3a763ca56dba97dadcfcfb8d6fe2d63" }
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  5. #25
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    de tout façon c'est simple fait :

    page 1 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    setcookie('connecte', '1');
    var_dump($_COOKIE);
    si tu rafraichies la page 'connecte' doit y être


    page 2 :


    et surprime bien tes cookies avant de faire tes tests

  6. #26
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Oui, j'ai fait ça et sur la page de connexion (page 1), quand je rafraichis, "connecte" y est bien, mais pas sur page 2...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  7. #27
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par laurentSc Voir le message
    Oui, j'ai fait ça et sur la page de connexion (page 1), quand je rafraichis, "connecte" y est bien, mais pas sur page 2...
    ton autre page est dans le même dossier ? t'ouvre bien la page dans un autre onglet ?

  8. #28
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    t'ouvre bien la page dans un autre onglet
    Je teste avec IE, pas FF, donc y a pas d'onglets , mais j'ouvre la nouvelle page dans la même fenêtre que la page précédente.
    ton autre page est dans le même dossier ?
    L'organisation est la suivante :
    repertoire
    - action_connexion/index.php (ou la page 1)
    - annonce1/index.php (ou la page 2)
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  9. #29
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par laurentSc Voir le message
    L'organisation est la suivante :
    repertoire
    - action_connexion/index.php (ou la page 1)
    - annonce1/index.php (ou la page 2)
    voila, encore une fois t'as pas lus la doc

    http://php.net/manual/fr/function.setcookie.php

    (paramètre path )

  10. #30
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Bien joué Stealth35

    Il faut donc ajouter l'argument path dans la fonction setcookie()
    Le chemin sur le serveur sur lequel le cookie sera disponible. Si la valeur est '/', le cookie sera disponible sur l'ensemble du domaine domain. Si la valeur est '/foo/', le cookie sera uniquement disponible dans le répertoire /foo/ ainsi que tous ses sous-répertoires comme /foo/bar/ dans le domaine domain. La valeur par défaut est le répertoire courant où le cookie a été défini.
    Edit :
    Et plus rapide aussi

  11. #31
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Génial, mais en plus du paramètre "path", il y a aussi le paramètre "domain" ; donc : setcookie("connecte","1",time()+60*60*24*365,'/','.nom_domaine');
    Merci beaucoup

    Je ne m'en étais pas rendu compte car la première fois que j'avais fait des cookies, tous les fichiers étaient dans le même répertoire donc cela n'était pas nécessaire.
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  12. #32
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Nouveau souci avec le cookie : quand je me connecte, je le positionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ...
    ?>
    <iframe src="cookie.php" frameborder=0></iframe>
    <?php
    ...
    (iframe car il y a en amont des affichages)
    et cookie.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php 
    setcookie("connecte","1",time()+60*60*24*365,'/','.nom_domaine);
    ?>
    puis dans une autre page où je le teste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (isset($_COOKIE["connecte"]))...
    c'est négatif. Qu'est-ce qui ne va pas ?
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  13. #33
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    te lance pas dans les iframe c'est un très mauvaise méthode

  14. #34
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    En effet, je n'étais pas tellement confiant, mais vu qu'il y a des affichages en amont dans ma page, je ne peux pas faire un setcookie ; comment puis-je m'y prendre ?
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  15. #35
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    fait le avant l'affichage, rien ne t’empêches de le faire

  16. #36
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411

  17. #37
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Réponse arrivée trop tard, car, suite à celle de stealth35, j'ai entrepris de modifier ma page pour faire tous les contrôles nécessaires suivi du setcookie avant les affichages, mais c'est bon à savoir car si je l'avais su avant, ça aurait été plus simple, mais là, j'avais commencé à modifier ma page et pas mémorisé la précédente...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  18. #38
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    si tu veux avancé je te conseil de lire (surtout de comprendre) ça :

    http://symfony.com/doc/current/book/..._symfony2.html

    prend le plus comme un exemple

  19. #39
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Merci pour le lien (heureusement que même si non bilingue, je me débrouille en anglais ; d'ailleurs, les sites que je développe pour le boulot sont tous en anglais).
    Et Symphony, je l'avais mis de côté (comme Zend), ayant décidé d'apprendre d'abord la POO (car j'avais trouvé un tuto sur Zend qui commençait par PDO, donc de la POO...)
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

  20. #40
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 386
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Ayant de nouveau un setcookie à faire sur une autre page, j'ai utilisé avec succès les fonctions de bufférisation, car là, il y avait encore plus d'echo que sur l'autre page et un formulaire html avec des affichages (au moins l'affichage du nom des champs).
    Y avait peut-être moyen de s'en sortir en exportant l'action dans un fichier séparé ; ce qui n'est pas le cas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <form method="post" action="<?=$_SERVER["PHP_SELF"]?>">
    (et de mémoriser le texte à afficher pour le faire plus tard) mais là, il a suffit de mettre un ob_start() en début de code et un ob_end_flush() à la fin et le tour était joué. Donc, super ce truc.
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 4 PremièrePremière 1234 DernièreDernière

Discussions similaires

  1. "setter" un cookie
    Par laurentSc dans le forum Langage
    Réponses: 4
    Dernier message: 22/04/2013, 09h39
  2. setter un cookie n'importe quand
    Par laurentSc dans le forum Langage
    Réponses: 5
    Dernier message: 05/03/2013, 23h59
  3. Les Cookies 4° ! : LA SOLUTION
    Par Ph. B. dans le forum XMLRAD
    Réponses: 2
    Dernier message: 31/01/2003, 16h46
  4. Les cookies 3° !!!
    Par Ph. B. dans le forum XMLRAD
    Réponses: 6
    Dernier message: 28/01/2003, 18h13
  5. [XMLRAD] Cookies pour login
    Par Sylvain Leray dans le forum XMLRAD
    Réponses: 9
    Dernier message: 23/12/2002, 17h47

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