PHP et SQL SERVER 2000 via odbc

PHP et SQL SERVER 2000 via odbc - PHP - Programmation

Marsh Posté le 22-09-2010 à 12:04:36    

Bonjour,
 
J'ai créé un pilote ODBC pour me connecter à une BDD MSSQL SERVER 2000.
Dans le panneau de config des pilotes odbc, j'ai donc créé mon pilote en spécifiant le nom du dsn, le login et le mot de passe. Le test de connexion à la BDD fonctionne.
 
Maintenant dans mon script php, j'utilise cette fonction pour me connecter à la base :

Citation :


function connexion_a_la_bdd()
    {
        $dsn    = 'sqlserver';
        $user   = 'sa';
        $pwd    = 'mdp';
 
         
        // Connect to MSSQL
        $lien    = odbc_connect( $dsn, $user, $pwd );
         
        if( !$lien )  
        {
            die( 'Something went wrong while connecting to MSSQL' );
        }
         
        return $lien;
    }


Mais il y a un problème ici :  

Citation :


$lien    = odbc_connect( $dsn, $user, $pwd );


 
Je reçois ce message d'erreur comme quoi la connexion a merdé !

Citation :

Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][Gestionnaire de pilotes ODBC] Source de données introuvable et nom de pilote non spécifié, SQL state IM002 in SQLConnect in C:\wamp\www\recup_anael_rh\connexion_bdd.php on line 29


 
Le serveur apache et la BDD SQL SERVER sont sur le meme serveur. J'ai toujours eu des problèmes avec les drivers odbc !
Quelqu'un peu me dire d'où vient le problème ?
 
Cordialement


Message édité par themeho le 22-09-2010 à 12:12:45
Reply

Marsh Posté le 22-09-2010 à 12:04:36   

Reply

Marsh Posté le 22-09-2010 à 14:54:57    

Le message dit clairement que la source de données est introuvable. Il s'agit du paramètre $dsn.
Habituellement on met dans ce paramètre la "connection string" qui est une longue chaine contenant des trucs du genre MotClé1=toto;Motcle2=titi;..., par exemple : $connection = odbc_connect("Driver={SQL Server Native Client 10.0};Server=$server;Database=$database;", $user, $password);
 
Voir http://www.connectionstrings.com/sql-server
 
Il y a aussi des exemples dans les commentaires de mssql_connect, voir http://php.net/manual/en/function.mssql-connect.php

Reply

Marsh Posté le 22-09-2010 à 15:04:38    

En fait c'est simplement WAMP qui merde avec les drivers ODBC, j'ai installé easyphp et ça marche nickel !

Reply

Marsh Posté le 01-03-2011 à 10:50:18    

bonjour,
jai pratiquement le meme probleme jai effectue ma connexion odbc avec succes mais pour connecter ma base sql server je recois le meme message derreur sachant que le client et server sont sur le meme poste et que dans ma source odbc jai mis le nom de ma bdd , mon code et comme suit
 
<?php
$dsn="sqlserver";
$username="";
$password="";
 
$sqlconnect=odbc_connect($dsn,$username,$password);
 
$sqlquery="SELECT identifiant FROM utilisateur;";
$process=odbc_exec($sqlconnect, $sqlquery);
 
while(odbc_fetch_row($process)){
$identifiant= odbc_result($process,"identifiant" );
echo "$identifiant<br>"; }
odbc_close($sqlconnect);
 
?>  
et le message derreur est  
 
Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][Gestionnaire de pilotes ODBC] Source de données introuvable et nom de pilote non spécifié, SQL state IM002 in SQLConnect in C:\Program Files\EasyPHP-5.3.5.0\www\connexion.php on line 6
 
si vous avez une idee ca m'aiderais bcq pour avancer merci
hantouva

Reply

Marsh Posté le 01-03-2011 à 11:00:11    

re bonjour;  
j viens de tester avec un autre code et c'est toujours le meme pb sachant que jutilise easyphp pour executer voici le code  
 
<?php
$ser="ecofie"; #the name of the SQL Server
$db="ecofie"; #the name of the database
$user=""; #a valid username
$pass=""; #a password for the username
 
$conn=odbc_connect("DRIVER=SQL
Server;SERVER=".$ser.";UID=".$user.";PWD=".$pass.";DATABASE=".$db.";Address=".$ser.",1433","","" );
?>
  ecofie etant le nom de ma source odbc et de ma base d donnees
cordialement
hantouva

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed