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 :

$_SESSION peut-elle contenir des objets? [POO]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Février 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 22
    Par défaut $_SESSION peut-elle contenir des objets?
    Bonjour,

    Je développe pour la première fois une appli en php.

    Je crée une connexion
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $connexion = new PDO ($base, $login, $pwd) ;
     $_SESSION['connexion'] = $connexion ;
    que je souhaite transmettre d'une page php à la suivante.

    Il me semble cependant que les objets ne peuvent être conservés dans des variables (super)globales.

    Quelqu'un peut-il infirmer ou confirmer ?
    Si c'est impossible, y a-t-il une solution pour maintenir une connexion vivante et ne pas la recréer pour chaque page ? (a priori ça charge le serveur !)

    Merci

  2. #2
    Expert confirmé
    Avatar de rawsrc
    Homme Profil pro
    Dev indep
    Inscrit en
    Mars 2004
    Messages
    6 142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Dev indep

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 142
    Billets dans le blog
    12
    Par défaut
    salut

    il est tout à fait possible conserver des instances de classe dans une session à la condition que ces objets ne soient pas des ressources. La connexion à une base de données est une ressource donc tu peux oublier la persistance en session.
    Ne t'inquiète pas concernant la destruction et la recréation de la connexion à la base de données, c'est le fonctionnement normal de PHP et ça tourne très bien, c'est bien optimisé. Avant que tu ne sois confronté à un goulot d'étranglement lié à la connexion à la base de données, tu as un peu de temps devant toi.

    Quand ça arrivera, il existe un outil de malade qui littéralement boost PHP c'est Swoole.

  3. #3
    Membre actif
    Homme Profil pro
    Retraité
    Inscrit en
    Février 2009
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 22
    Par défaut Merci
    Merci,

    Donc l'objet $connexion de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $connexion = new PDO ($base, $login, $pwd) ;
    n'est pas conservable dans une $_SESSION mais les tableaux associatifs tels les objets ci-dessous $reponse te $tupleFoyer peuvent y être conservés.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $reponse=$connexion->query($requete);
    $tupleFoyer = $reponse->fetch() ;
    Encore merci

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 10/01/2012, 21h02
  2. Réponses: 2
    Dernier message: 21/06/2011, 16h19
  3. La Classe Enum peut-elle contenir des méthodes
    Par devocx dans le forum Langage
    Réponses: 4
    Dernier message: 22/12/2009, 14h54
  4. Une page HTML peut-elle sauvegarder des donnees?
    Par ValyGator dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 31/10/2009, 11h37
  5. [Débutant] Une fonction peut-elle prendre des caractères en argument ?
    Par mdelvaux89 dans le forum MATLAB
    Réponses: 7
    Dernier message: 07/04/2009, 22h31

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