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

EDI, CMS, Outils, Scripts et API PHP Discussion :

Récupération d'un objet PHP


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2013
    Messages : 10
    Par défaut Récupération d'un objet PHP
    Bonjour @tous
    Je suis en train de tourner un script mais le plus dur c'est comment commencer, bref, j'ai développé une classe " Room " pour pouvoir utiliser l'objet instancié dans toutes mes pages :

    Fichier 1.php : class Room.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    <?php
    class Room {
     
    private $NomClient;
    private  $NomAgent;
    private  $NomTable;
     
    function __construct($NomClient,$NomAgent,$NomTable){
     
    $this->NomClient=$NomClient;
    $this->NomAgent=$NomAgent;
    $this->NomTable=$NomTable;
     
    }
     
    // Je n'ai pas besoin des setteurs pour le moment
     
    public  function getNomAgent(){
    return $this->NomAgent;
    }
     
     
    public   function getNomTable(){
    return $this->NomTable;
    }
    ?>
    Fichier 2.php : fichier d'instanciation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    <?php
    include 'baseConnecte.php';
    require (dirname(__FILE__).'/chatClass.php');
     
    global $NomClient ;
    global  $NomTable ;
    global $NomAgent;
    global $RoomChat;
     
     
    if (isset($_GET['nom']) && isset($_GET['sessionName']) && isset($_GET['NomAgent'])){
     
     $NomClient= $_GET['nom'] ;
     $NomTable = $_GET['sessionName'];
    $NomAgent = $_GET['NomAgent'] ;
    }
     
    db_connexion();
    $RoomChat = new Room($NomClient,$NomAgent,$NomTable);
    // $RoomChat->CreateTable($NomClient,$NomAgent,$NomTable);
     
            $NomAgent = $RoomChat->getNomAgent();
            $NomTable = $RoomChat->getNomTable() ;
     
            echo $NomAgent;
            echo '<pre>';
            echo $NomTable;
            echo " I'M IN ";
    ?>
    Fichier 3.php // là où mes soucis ont commencé
    J'ai besoin d'utiliser l'objet instancié dans le fichier 2 avec toutes les méthodes de la classe mais hélas aucun moyen de le récupérer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?php
    include 'db.php';
     
    echo $RoomChat->getNomAgent(); //résultat : aucun affichage et aucun msg d'erreur
     
    ?>
    J'ai essayé avec les variables globales // public pour les $ de la classe et idem. rien n'a changé
    Merci de m'avertir si mon code ne sert à rien

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Si tu veux utiliser un objet PHP à travers la navigation sur le site, il faut le stocker en session avec serialize()
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2013
    Messages : 10
    Par défaut
    @sabotage, merci d'avoir répondu

    J'ai essayé avec les sessions, de serialiser l'objet puis de le desérialiser, idem. le problème c'est que les variables globales ne m'apportent aucune utilité vu que ces dernières vont contenir plusieurs attributs coté serveur pour un seul client connecté cependant j'aimerais avoir accès aux attributs de chaque client et plus précisément de chaque objet instancié

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Ahhhh je commence à comprendre ce que tu veux.

    Déjà il faut réviser les notions :
    - une variable globale est une variable accessible depuis n'importe quelle partie d'un script PHP
    - private / public dans une classe concerne la possibilité d'accès aux éléments depuis l'extérieur de la classe.

    Bref, il n'existe pas dans PHP de mécanisme pour partager des données entre clients.
    Il faudra passer par une base de données.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2013
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2013
    Messages : 10
    Par défaut
    La BD existe déjà et je n'ai aucun souci avec les attributs de type public ou private
    le but de l'application c'est de créer un chat multi-user avec laquelle un agent de chat peut discuter avec 2 ou 3 clients en même temps. Chaque client sera identifié avec le numéro de session qui a eu du coup l'agent peut envoyer et recevoir les msg de chaque client dans une fenêtre à part sans chevaucher ni la discussion ni les infos des clients . voila ce qui m'embête.
    1° - un client se connecte et s'inscrit à la liste d'attente.
    2° - l'agent accepte le chat et ouvre une discussion dans une nouvelle fenêtre où il aura toutes les informations relatives au client accepté.

    as tu une proposition

Discussions similaires

  1. récupération d'un objet PHP en fonction de son ID
    Par pierrot2908 dans le forum Langage
    Réponses: 2
    Dernier message: 02/07/2009, 10h21
  2. [POO] Internet explorer et objet php
    Par Agrumes dans le forum Langage
    Réponses: 4
    Dernier message: 25/07/2006, 15h38
  3. [POO] Conserver un objet PHP 5 entre plusieurs pages
    Par Invité dans le forum Langage
    Réponses: 24
    Dernier message: 20/05/2006, 14h13
  4. [DOM] récupération de XML par PHP
    Par shingara dans le forum Bibliothèques et frameworks
    Réponses: 9
    Dernier message: 13/02/2006, 20h56
  5. [Conception] récupération d'une variable php dans une autre page
    Par vali7 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 18/01/2006, 11h19

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