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 :

Problème avec le driver MySQL ? [PDO]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 25
    Par défaut Problème avec le driver MySQL ?
    Bonjour tout le monde
    J'ai un petit probleme avec pdo, alors que j'ai deja fait plusieurs requete avant, une requete exactement comme les autre m'indique une erreur
    Voici l'erreur:
    Array ( [0] => HY000 [1] => 2036 [2] => )
    La connexion se fait avec une classe:
    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
    public function __construct()
       {
          /* Connexion a une base de donnees ODBC en invoquant un driver */
          // Version pour MYSQL
          $dsn = 'mysql:host=localhost;dbname=test';
          $user = 'root';
          $password = '';	
     
          try
          {
             Connexion::$dbh = new PDO($dsn, $user, $password);
    	 Connexion::$dbh->setAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, TRUE);
             if(Connexion::$dbh == NULL) echo "Objet PDO non cree<br/>";
          }
          catch (PDOException $e)
          {
             echo '<br/>Echec de la connexion : ' . $e->getMessage().'<br/>';
          }
        }
     
       public static function laConnexion ()
       {
          if(Connexion::$dbh == NULL){ new Connexion(); }
          if(!Connexion::$dbh) die("Erreur connexion");
       return Connexion::$dbh;
       }
    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
     
    function test()
    {
    	$conn=Connexion::laConnexion();
    	$sql="SELECT *"
    	." FROM UTILISATEUR u"
    	." WHERE u.ID_UTIL='$id'"
     
    	$result=$conn->query($sql);
     
    	if(!$result)
            {
                  print_r($conn->errorInfo());
                  die("<br/>Erreur select:<br/> $sql");
            }
    	return $result;
    }
    Si quelqu'un qui connais pdo peut m'aider svp
    Merci d'avance
    ++

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    882
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 882
    Par défaut
    salut
    Array ( [0] => HY000 [1] => 2036 [2] => )
    pour moi c'est un resultat bon
    en quoi est ce une erreur

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 25
    Par défaut
    il va dans le test : "if(!$result)"
    donc la requete n'a pas fonctionner
    et errorInfo est une methode de PDO
    http://php.benscom.com/manual/fr/function.pdostatement-errorinfo.php

    J'ai donc une erreur SQLSTATE (HY000) et une erreur spécifique au driver (2036) j'utilise le driver mysql

    Mais je n'arrive pas a savoir à quoi cela correspond et comment je peut résoudre ce pb...

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 25
    Par défaut
    j'ai trouvé ca, mais je ne comprend pas l'erreur
    http://dev.mysql.com/doc/refman/5.0/fr/error-handling.html

  5. #5
    Membre Expert
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Par défaut
    Salut,

    Pour le code d'erreur je ne sais pas, mais il sort d'ou le $id ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $sql="SELECT * 
    FROM UTILISATEUR u
    WHERE u.ID_UTIL='$id'
    ";
    Sinon, comme tu ne la bind pas, fais en un echo et passe la dans phpmyadmin, se sera plus simple pour determiner l'erreur.

    bye

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 25
    Par défaut
    he bien dans phpmyadmin y'a aucun probleme la requete fonctionne, le $id vient du parametre que j'ai oublier de recopier...

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 25
    Par défaut
    sauf que c'est pas encore résolu

    J'ai mis directement la requete que je veux faire, qui fonctionne dans phpmyadmin:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT tps FROM TRAVAILLE t, POLE p, UTILISATEUR u WHERE p.ID_POLE='1' AND u.ID_UTIL='5' AND t.LADATE BETWEEN '2006-04-01' AND '2006-04-31' AND p.ID_POLE=t.ID_POLE AND u.ID_UTIL=t.ID_UTIL
    j'ai tjs la meme erreur

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 25
    Par défaut
    J'ai meme fait juste un "select * from UTILISATEUR" et ca m'indique toujours la meme erreur

  9. #9
    Membre Expert
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Par défaut
    Ce sont toutes tes requetes qui plante ou juste celle ci ?

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 25
    Par défaut
    ca le faisait sur n'importe quelle requete.
    MAis c'est bon, j'ai arreter d'utiliser pdo et j'utilise maintenant mysqli

    Je pense que c'était le package pdo ou le driver pdo_mysql qui avait un probleme.

    Merci quand meme pour vos aides

  11. #11
    Membre Expert
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Par défaut
    Je pense que c'était le package pdo ou le driver pdo_mysql qui avait un probleme.
    effectivement j'allais en venir ici aussi.

    Mais bon normalement sa fonctionne bien PDO En tout chez moi sa fonctionne.

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 25
    Par défaut
    he bien sur mon portable aussi il fonctionne trés bien (debian sarge)
    Mais j'ai préferé changer sur mon poste de travail car ca me ralentisser trop les erreurs de ce type.

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

Discussions similaires

  1. Problème avec le driver ODBC IBPhoenix Firebird/Interbase
    Par lio33 dans le forum Connexion aux bases de données
    Réponses: 5
    Dernier message: 27/02/2006, 09h59
  2. Problème avec dbExpress et Mysql (dbexpmysql.dll?)
    Par tipiweb dans le forum Bases de données
    Réponses: 4
    Dernier message: 31/01/2006, 16h46
  3. Petit problème avec vb6 et mysql
    Par AsmCode dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 05/01/2006, 04h44
  4. Problèmes avec INTERSECT sur MYSQL
    Par zarbydigital dans le forum Requêtes
    Réponses: 1
    Dernier message: 27/09/2005, 13h18
  5. Problème avec mon service mysql et PhpMyAdmin
    Par Fixazo dans le forum Outils
    Réponses: 1
    Dernier message: 28/08/2005, 18h02

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