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 :

Variable de session indisponible sous SAFARI


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut Variable de session indisponible sous SAFARI
    Bonjour tout le monde,

    J'ai créé un site PHP avec des variables de session...

    Ce site fonctionne parfaitement sous FF, Google Chrome et même IE mais avec Safari, pas moyen d'utiliser les variables de session.

    Je suis obligé, côté client, d'aller dans les préférences de SAFARI et dans l'onglet "Sécurité" sélection le bouton radio "Toujours" dans la section "Accepter les cookies".

    Par défaut, ce n'est pas toujours, le site ne fonctionne donc pas.

    Que me conseillez-vous dans une telle situation ?

    Prévenir l'utilisateur par une alerte ou avez une solution moins bancale ?

    Merci d'avance pour votre aide.

    beegees

  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 376
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 376
    Billets dans le blog
    17
    Par défaut
    Les sessions nécessitent des cookies, si Safari les bloque c'est mal barré.

    Je suis obligé, côté client, d'aller dans les préférences de SAFARI et dans l'onglet "Sécurité" sélection le bouton radio "Toujours" dans la section "Accepter les cookies".
    Quels autres choix que "toujours" ?

  3. #3
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut
    Citation Envoyé par Séb. Voir le message
    Les sessions nécessitent des cookies, si Safari les bloque c'est mal barré.


    Quels autres choix que "toujours" ?
    Salut,

    Merci pour ta réponse.

    Les autres choix :

    - jamais
    - Provenant seulement des sites que je visite (ce choix qui est par défaut ne permet pas de faire fonctionner mon site).

    beegees

  4. #4
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 376
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 376
    Billets dans le blog
    17
    Par défaut
    - Provenant seulement des sites que je visite (ce choix qui est par défaut ne permet pas de faire fonctionner mon site).
    Il m'aurait semblé logique que le cookie soit accepté avec ce choix.
    Regarde la doc de setcookie( ) http://php.net/setcookie il faut peut-être préciser un $path et/ou un $domain pour aider Safari.

    EDIT :
    Je viens de me rendre compte que je me suis gourré, je pensais à session_set_cookie_params( ) et non setcookie( ).
    http://www.php.net/manual/fr/functio...kie-params.php

  5. #5
    Membre émérite Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Par défaut
    Citation Envoyé par Séb. Voir le message
    ....Les sessions nécessitent des cookies....
    Bonjour

    Ce n'est pas une obligation.
    Les variables de session php sont initiées sur un serveur distant et accessible depuis un navigateur.
    Les cookies le sont sur le poste utilisateur.

    Certes, l'association des deux peut se faire suivant les contraintes de l'application.

    Mais on peut parfaitement avoir accés à des variables de session php, sans l'utilisation des cookies.
    Le seul inconvénient, c'est la durée de vie...soit durant le temps de la connexion.

  6. #6
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 376
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 376
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par alain31tl Voir le message
    Ce n'est pas une obligation.
    Oui.

    Mais on peut parfaitement avoir accés à des variables de session php, sans l'utilisation des cookies.
    Oui

    Le seul inconvénient, c'est la durée de vie...soit durant le temps de la connexion.
    Qu'appelles-tu "le temps de la connexion" ?

  7. #7
    Membre émérite Avatar de alain31tl
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 935
    Par défaut
    Citation Envoyé par Séb. Voir le message
    Qu'appelles-tu "le temps de la connexion" ?
    Exemple :
    Je m'identifie et j'initie une session d'une variable.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    session_start();
     
    $_SESSION['nom'] = $nom;
    Celle-ci sera disponible et exploitable à tout instant, tant que je reste en ligne.
    Si je ferme le navigateur, cette session (serveur) est détruite.

  8. #8
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 376
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 376
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par alain31tl Voir le message
    Exemple :
    Je m'identifie et j'initie une session d'une variable.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    session_start();
     
    $_SESSION['nom'] = $nom;
    Celle-ci sera disponible et exploitable à tout instant, tant que je reste en ligne.
    Si je ferme le navigateur, cette session (serveur) est détruite.
    Comment fais-tu cela sans cookie ? Avec le session.use_trans_sid à 1 ?

  9. #9
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 376
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 376
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par beegees Voir le message
    Je suis obligé, côté client, d'aller dans les préférences de SAFARI et dans l'onglet "Sécurité" sélection le bouton radio "Toujours" dans la section "Accepter les cookies".
    Je viens de tester avec un Safari sous WinXP réglé par défaut en "Accepter seulement les cookies du site visité" et ça passe bien.

    session_1.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php
        session_start( );
     
        $_SESSION['now'] = time( ) ;
        $_SESSION['foo'] = 'bar' ;
    ?>
     
    <a href="session_2.php">Page 2</a>
    session_2.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
        session_start( ) ;
        print_r($_SESSION) ;
    ?>
    Peux-tu tester ces 2 scripts ?

Discussions similaires

  1. [MySQL] Problème avec variables de session PHP sous safari
    Par tomguiss dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 20/10/2010, 13h24
  2. Réponses: 3
    Dernier message: 14/05/2008, 18h31
  3. Variables 4D sous Safari
    Par brazilia28 dans le forum 4D
    Réponses: 1
    Dernier message: 20/06/2007, 12h21
  4. Réponses: 4
    Dernier message: 20/06/2006, 13h12
  5. Réponses: 12
    Dernier message: 10/06/2006, 19h06

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