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 :

PHP, PDO et MSSQL 2008 [SQL-Server]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Technicien informatique multi competences
    Inscrit en
    Mai 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bahamas

    Informations professionnelles :
    Activité : Technicien informatique multi competences
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 5
    Par défaut PHP, PDO et MSSQL 2008
    Bonjour,

    je débute en php.

    J'essaie d'établir une connexion vers une base de données afin de manipuler l'exploitation des données.
    J'utilise la methode PDO qui semble être une méthode courante et recommandée pour me connecter à une base de données SQL Server 2008.
    J'ai donc crée une base nommée BASE_TEST sur mon serveur en local. Un user du nom de php et un schéma du même nom y sont associés.

    J'ai repris le script de php.net pour se connecter à la base de données mais rien n'y fait, je n'obtiens pas de résultat.
    J'ai donc réduit le code au minimum mais rien.

    J'ai activé dans php.ini les lignes suivantes :
    extension=php_mssql.dll
    extension=php_pdo.dll
    extension=php_pdo_mssql.dll

    Voici le code testé :
    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
    <?php
      try {
        $hostname = "127.0.0.1";            //host
        $dbname = "BASE_TEST";            //db name
        $username = "php";            // username like 'sa'
        $pw = "php";                // password for the user
     
        $dbh = new PDO ("mssql:host=$hostname;dbname=$dbname","$username","$pw");
      } catch (PDOException $e) {
        echo "Failed to get DB handle: " . $e->getMessage() . "\n";
        exit;
      }
      $stmt = $dbh->prepare("SELECT * FROM table");
      $stmt->execute();
      while ($row = $stmt->fetch()) {
        print_r($row);
      }
      unset($dbh); unset($stmt);
    ?>
    Le résultat obtenu : Failed to get DB handle: could not find driver

    J'ai testé en minimisant le code à la connexion à la base de données mais rien n'y fait.

    Merci d'avance.

  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
    Vérifie dans ton php.ini que l'extension pdo_mssql est bien activée.

    Attention elle n'existe plus en PHP 5.3
    Tu peux utiliser sqlsrv
    http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre à l'essai
    Homme Profil pro
    Technicien informatique multi competences
    Inscrit en
    Mai 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bahamas

    Informations professionnelles :
    Activité : Technicien informatique multi competences
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 5
    Par défaut
    Bonjour et merci pour ta réponse.

    Citation Envoyé par rom1ymca Voir le message

    J'ai activé dans php.ini les lignes suivantes :
    extension=php_mssql.dll
    extension=php_pdo.dll
    extension=php_pdo_mssql.dll
    Je suppose que ça correspond à la 3 ligne activée.
    Je suis en version 5.2.17.

    Je vais essayer la méthode que tu me conseilles, je te tiens au courant.

    Rom1

  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
    Je voulais dire phpinfo() et pas php.ini
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre à l'essai
    Homme Profil pro
    Technicien informatique multi competences
    Inscrit en
    Mai 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bahamas

    Informations professionnelles :
    Activité : Technicien informatique multi competences
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 5
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Je voulais dire phpinfo() et pas php.ini
    Effectivement :
    PDO
    PDO support enabled
    PDO drivers no value

    Il me manque un truc.
    Je cherche d'ou ça vient.

  6. #6
    Membre à l'essai
    Homme Profil pro
    Technicien informatique multi competences
    Inscrit en
    Mai 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bahamas

    Informations professionnelles :
    Activité : Technicien informatique multi competences
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 5
    Par défaut
    J'ai ajouté ca dans php.ini :
    extension=php_pdo_sqlsrv_52_ts_vc6.dll

    rien ne change toujours le même message.

    Une idée ?

  7. #7
    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
    Est-ce que tu as controlé que le driver était bien présent dans ton phpinfo() ?
    Est-ce que tu as changé le mode de connexion PDO dans ton code ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

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

Discussions similaires

  1. Joindre base MSSQL 2005 sur MSSQL 2008
    Par x2thez dans le forum Administration
    Réponses: 2
    Dernier message: 17/08/2011, 11h11
  2. [PDO] PHP-PDO-MySQL connection 'persistante' et stored-procedures
    Par chrisrol dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 16/01/2010, 19h18
  3. [PDO] PHP/PDO ne marche pas en ligne de commande
    Par ofostier dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 03/10/2009, 11h29
  4. connexion string pour MSSQL 2008
    Par x2thez dans le forum Développement
    Réponses: 5
    Dernier message: 03/07/2008, 11h01
  5. [SQL] [php] PDO - fonction BindParam
    Par fadeninev dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 23/06/2006, 15h36

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