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

PHP & Base de données Discussion :

Retourner une variable [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    264
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 264
    Par défaut Retourner une variable
    Bonjour,

    Dans une classe, une fonction permet de se connecter à mysql... Pour récupérer l'état de la connexion, il suffirait de récupérer une valeur retournée par le result de la fonction mais le problème est plus compliqué, il s'agit de retourner une variable vide et tester la présence de celle-ci, un peu comme le ferait la fonction isset

    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
     
      class _CLASS_Including {
     
        function setConnexion($bool) {
          if ($bool==true) {
            global $root;
            # Paramètres de connexion
            include '../../inc.mysql.php';
            mysql_connect($host, $login, $password);
            mysql_select_db($db);
            # Etat de connexion (Impossible de trouver la variable!)
            return $connect_result;
          }
        }
    }
    ...
    if ($class->setConnexion(true)==$connect_result) echo "trouvé!"; else echo "non trouvé!"

    En vous remerciant par avance pour vos conseils

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Par défaut
    a quel niveau se situe le pbm? franchement j'ai pas compris grand chose

  3. #3
    Membre émérite
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Par défaut
    J'ais un peu de mal à comprendre ce que tu veux faire... en voyant ton commentaire...

    Citation Envoyé par ctrl+z
    il s'agit de retourner une variable vide et tester la présence de celle-ci, un peu comme le ferait la fonction isset
    je dirais...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    return isset($connect_result);
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    return !empty($connect_result);
    mais en voyant ton code je dirais plutot...

    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
     
    class _CLASS_Including 
    {
          var $_connectHandle;
          
          function setConnexion($bool = true) 
          {
                if($bool) 
                {
                      global $root;
                      
                      include '../../inc.mysql.php';
                      
                      if(!$this->_connectHandle = mysql_connect($host, $login, $password))
                            return false;
                      
                      
                      
                      return mysql_select_db($db,$this->_connectHandle);
                }
          }
    }
    
    
    if($class->setConnexion()) 
          echo 'Connection effectuée'; 
                else 
                   echo 'Connection échouée'
    
    Mais j'ais pas dû comprendre le but de ta classe et de sa méthode... .. .

    @ tchaOo°

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    264
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 264
    Par défaut
    On apprend beaucoup à lire ce code notament le ($bool = true)
    Merci!

  5. #5
    Membre émérite
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Par défaut
    Ca règle ton problème ou pas... .. ?

    ( si c'est le cas n'oublis pas le )

    @ tchaOo°

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    264
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 264
    Par défaut
    Non, car le problème est toujours le même, exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     $connect_result=false;
     $class->setConnexion($connect_result);
    Ici, la variable $connect_result est déclarée puis réutilisée pour connaitre l'état de la connexion. Le but est que la fonction le fasse elle même sans autre ajout. Une variable vide retournée par la fonction serait l'idéale.

    Puis un truc dans le genre..
    if (isset($connect_result) alors...

  7. #7
    Membre émérite
    Avatar de kankrelune
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    763
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 763
    Par défaut
    j'avoue que je comprend pas ce que tu veux faire... .. .

    tu veux controler si la connection s'est bien passée... c'est ça... mais alors pourquoi vouloir faire ça... .. .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $connect_result=false;
    $class->setConnexion($connect_result);
     
    if(!$connect_result)
    pourquoi ne pas faire directement...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if(!$class->setConnexion())
    tu peux aussi implementer une methode te disant si tu es connecté

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    function isConnected()
    {
         return is_resource($this->_connectHandle);
    }
    après tu fais...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $class->setConnexion();
     
    if(!$this->isConnected())
    Mais ça change rien...

    Sinon pour ton problème de variable tu peux faire...

    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
     
     function setConnexion(&$statut, $bool = true) 
          {
                if($bool) 
                {
                      global $root;
     
                      include '../../inc.mysql.php';
     
                      if(!$this->_connectHandle = mysql_connect($host, $login, $password))
                            $statut = false;
     
     
     
                      if(!mysql_select_db($db,$this->_connectHandle))
                            $statut = false;
     
                      $statut = true;
                }
          }
    ensuite tu peux faire...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $connect_result=false;
    $class->setConnexion($connect_result);
     
    if(!$connect_result)
       echo 'connection echouée';
             else
                    echo 'connection effectuée';
    Mais comme je l'ais déja dis je vois pas l'interet (mais toi tu le vois peut être)... .. .

    @ tchaOo°

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

Discussions similaires

  1. retourner une variable après un callback de button
    Par roubas dans le forum Interfaces Graphiques
    Réponses: 5
    Dernier message: 19/06/2009, 19h38
  2. [PHP 5.0] Creer une fonction qui retourne une variable dans le script
    Par keaton7 dans le forum Langage
    Réponses: 8
    Dernier message: 10/02/2009, 14h09
  3. [POO] Retourner une variables contenu dans une autre méthode
    Par arnaudperfect dans le forum Langage
    Réponses: 6
    Dernier message: 15/10/2007, 16h29
  4. Réponses: 1
    Dernier message: 17/01/2007, 21h52
  5. Réponses: 6
    Dernier message: 30/08/2006, 18h05

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