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 :

Probleme varialbe PDO global


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 57
    Par défaut
    dans mes fichiers php j'ai des class qui appellent un autre fichier, pour la connexion à la base de donnée

    Ca donne un truc :

    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
    <?php
    require('connect.php');//$conn=new PDO(**);
     
    class ma_class {
     
    function mafontion (){
    global $conn;
     $query = 'SELECT * FROM rubrique,contien WHERE rubrique.ID_RUBRIQUE=contien.ID_RUBRIQUE AND
         ETAT>=:etat  ORDER BY MENU';
      $resquery=$conn->prepare($query);
    $resquery->bindParam('etat',$etat);
    $resquery->execute();
    $listerlesrub=$resquery->fetchAll();
    return $listerlesrub;
      }
    }
    ?>
    sur OVH tout marche correctement !

    Seulement si je passe sur un autre serveur spécifique à mon client.
    Ben la crash ca marche pas

    ca me met l'erreur :
    Fatal error: Call to a member function bindParam() on a non-object

    Or j'ai essayé de remplacer la ligne "global $conn", par directement la syntaxe issue du fichier, et la ca marche.

    Je en comprend pas pourquoi expliquez moi s'il vous plait.

    Cordialement Guillaume Escande

    Bon je pense avoir compris pourquoi:

    J'ai mon register_global à off sur le serveur.

    Et je n'arrive pas à y intervenir dessus

    L'alternative serait de trouver un moyen de remplacer toutes ces global par autre chose mais quoi ?

    Aidé moi s'il vous plait

    Je vous pas comment faire

  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
    Il serait plus logique de créer la connexion dans ta classe plutot qu'en dehors.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 64
    Par défaut
    Bonsoir,

    normalement on devrait voir le fichier conn.php par contre là tu déclares pour une autre fois la variable $conn elle est déjà déclarée dans le fichier conn.php non?

    alors à mon avis essaies de la déclarer en de hors de la classe et dans le fichier conn.php comme ça t'en auras accès dans ta classe pour l'utiliser

Discussions similaires

  1. [PDO] Probleme avec PDO / PHP5
    Par anjin dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 27/08/2007, 07h33
  2. Probleme variable fichier global
    Par HULK dans le forum ASP.NET
    Réponses: 1
    Dernier message: 07/06/2007, 09h49
  3. Probleme de variable globale ?
    Par nox75 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 09/05/2007, 12h08
  4. Probleme de variable globale?
    Par issam16 dans le forum Access
    Réponses: 7
    Dernier message: 01/07/2006, 17h32
  5. [VB.Net] Probleme provenant de Global.asax
    Par Pepito dans le forum ASP.NET
    Réponses: 6
    Dernier message: 15/12/2005, 12h01

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