Connexion ODBC avec les identifiants WIndows sous PHP

cs_ejoey Messages postés 5 Date d'inscription jeudi 4 décembre 2008 Statut Membre Dernière intervention 30 juillet 2009 - 28 juil. 2009 à 10:29
cs_hantouva Messages postés 12 Date d'inscription vendredi 10 décembre 2010 Statut Membre Dernière intervention 19 mars 2012 - 28 févr. 2011 à 10:34
Bonjour,

Je souhaite me connecter à une base SQL sur un serveur distant. Pour cela je crée une source de données ODBC en lui indiquant d'utiliser les identifiants windows pour la connexion. A la fin de la configuration, le test est OK.
Je me lance donc dans le PHP pour m'y connecter mais à mon grand regret cela ne marche pas. Il n'y a pas de message d'erreur mais c'est la valeur retournée qui vaut false.
Sous PHP j'utilise la fonction odbc_connect avec comme paramètre le DSN, deux chaînes de caractères vides qui correspondent aux paramètres login et password. J'ai également essayé de m'y connecter en remplissant ces champs mais cela ne change rien. Quelqu'un pourrait-il me renseigner dessus?

5 réponses

nautilus99 Messages postés 661 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 18 septembre 2009 1
30 juil. 2009 à 21:29
Bonsoir,

Grrrrr, en lisant ne serait-ce qu'un semblant de doc ODBC, la réponse est claire et immédiate, login et password ne peuvent en aucun cas être vides en cas de connexion réseau.

Il faut déjà que le login et pass correspondent à ceux diu service ODBC auquel tu te connectes..
0
cs_ejoey Messages postés 5 Date d'inscription jeudi 4 décembre 2008 Statut Membre Dernière intervention 30 juillet 2009
30 juil. 2009 à 22:21
Bonsoir,

Je n'ai peut être pas été assez précis dans mon message mais j'ai déjà essayé de me connecter en remplissant le login et le password (windows). La connexion à la base se fait avec les identifiants windows lors de la configuration de la source de données ODBC.
Par contre si j'utilise un outil tel que MSSQL Server Management, j'arrive à consulter le contenu de la base, en spécifiant toujours lors de la connexion l'utilisation des identifiants windows.
0
nautilus99 Messages postés 661 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 18 septembre 2009 1
30 juil. 2009 à 22:24
Ben voilà, MSSQLServer..

Il fallait le dire dès le départ, et penser à configurer le serveur pourrépondre aux réquêtes de tel ou tel host..
je présume évidemment quu el ehost en question est différent de localhost..
0
cs_ejoey Messages postés 5 Date d'inscription jeudi 4 décembre 2008 Statut Membre Dernière intervention 30 juillet 2009
30 juil. 2009 à 22:32
oui c'est bien ça, la base ne se trouve pas sur localhost. Il s'agit d'une machine distante.
Si j'ai bien compris ton message, il y a une configuration à faire au niveau de la machine contenant la base à laquelle je veux accéder?
Y a-t-il un outil spécifique à utiliser? Sur la machine contenant la base, je vois bien l'instance de MSSQL Server tourner mais je ne vois pas où le configurer. Le seul truc dont j'ai accès c'est une petite fenêtre sans vraiment possibilité de configuration.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_hantouva Messages postés 12 Date d'inscription vendredi 10 décembre 2010 Statut Membre Dernière intervention 19 mars 2012
28 févr. 2011 à 10:34
bonjour;
jai aussi un probleme de connexion a ma base de donnee sql server, le clint et serveur sont sur le meme poste ainsi que la base de donnee pour le moment;jai effectue une connexion odbc qui a reussi avec un nom de source = au nom de ma base de donnee et une connexion windows

le pb c'est lors de lexecution je recois un message derreur sql
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 7
mon code est comme suit:
<?php
$dsn="sql server";
$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
"; }
odbc_close($sqlconnect);
?>

si vs avez une idee elle sera la bienvenue merci davance
0
Rejoignez-nous