Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & SQL-Server
PHP & SQL-Server Forum d'entraide sur SQL-Server avec PHP. Avant de poster -> FAQ SQL-Server
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/06/2006, 14h41   #1
Candidat au titre de Membre du Club
 
Développeur informatique
Inscription : juin 2003
Messages : 59
Détails du profil
Informations personnelles :
Âge : 31

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2003
Messages : 59
Points : 12
Points : 12
Envoyer un message via MSN à heddicmi
Par défaut Echec de connexion à SQL Server Express

Bonjour !

Dans les jours à venir, je vais être appellé à travailler sur des bases avec SQL Server Express.

hum.... Après installation, je reste bloqué à la 1ère étape : Connexion au serveur...

J'exécute donc mssql_connect() avec, je suppose, le bon couple login / mot de passe. J'obtiens toujours l'erreur Warning: mssql_connect(): Unable to connect to server: Serveur in blablabla

Je suppose donc aussi que je me trompe dans le nom du serveur à définir (localhost, ip : même erreur).

Je travail avec PHP 4.3.10 et un Apache 1.3.33.

Si un spécialiste de SQL Server Express passe par ici, j'aimerais demander son aide pour comprendre ce qui ne tourne pas.

Merci !
heddicmi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 15h42   #2
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
Regarde le mode d'identification du server. Normalement il y en a deux.
Windows et Windows/SqlServer. Pour que ça fonctionne tu dois être dans le deuxième choix.
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/06/2006, 17h03   #3
Candidat au titre de Membre du Club
 
Développeur informatique
Inscription : juin 2003
Messages : 59
Détails du profil
Informations personnelles :
Âge : 31

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2003
Messages : 59
Points : 12
Points : 12
Envoyer un message via MSN à heddicmi
Bon, sans trop comment savoir pourquoi ni comment, la connexion est passé...

Le conseil obtenu en réponse avait déjà été vérifié...

A force de tripatouiller de ci de là, j'ai trouvé bon le bon système... mais comme j'ai pas détecté ce qu'il fallait réellement, je viens de passer en mode désintallastion / Réinstallation...

Si j'ai réussi un fois... Porqué pas une 2nde fois ?
heddicmi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 09h13   #4
Candidat au titre de Membre du Club
 
Développeur informatique
Inscription : juin 2003
Messages : 59
Détails du profil
Informations personnelles :
Âge : 31

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2003
Messages : 59
Points : 12
Points : 12
Envoyer un message via MSN à heddicmi
hum...

Bon je reste dans mon ignorance...

J'utilise la chaine :
mssql_connect("NOM_ORDI\SQLEXPRESS", "SA", "MOTDEPASSE");

Avec SQLEXPRESS, le nom de l'instance (nom laissé par défaut lors de l'installation),
et MOTDEPASSE, le mot de passe du compte SA, définit lors de l'installation...

1er test : Echec avec le message d'erreur Warning: mssql_connect(): Unable to connect to server: Serveur in blablabla...

Après plusieurs changements, cette même chaîne ne retourne plus d'erreur, j'y ajoute une requête, une récupération de résultat, etc... Tout se passe bien.

Suite à l'installation sur un autre ordinateur, j'ai le même soucis. Malgré avoir configuré les 2 instances de la même façon, le 2nd refuse de se connecter...

Cet incompréhension va me rendre fou !
heddicmi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 10h56   #5
Membre confirmé
 
Avatar de Cpas2latarte
 
Inscription : janvier 2006
Messages : 238
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 238
Points : 217
Points : 217
Par défaut Problème réseau ?

Le serveur SQL Express est il en Local?
Car par il me semble que par défaut, l'interface réseau dans SQL EXPRESS (et MSDE d'ailleurs) est désactivé.
Pour le vérifier, crée un DSN en local (en principe cela devrai fonctionné malgré tous, car il utilise dans ce cas-en local-un autre moyen de connection)

Lors de la création du DSN un boutton permet de tester la connection

Puis essais de créer un DSN sur une machine tiers vers le serveur SQL EXPRESS.

Si cela ne fonctionne pas (echec de la conection) sur la machine distante et que cela fonctionne sur la machine local, c'est que vraisemblablement :
-d’une part l'interface réseau n'est pas activé dans SQL EXPRESS
-et d’autre part PHP ne peut accéder à SQL SERVER EXPRESS que par le réseau

Cordialement
Cpas2latarte est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 13h51   #6
Candidat au titre de Membre du Club
 
Développeur informatique
Inscription : juin 2003
Messages : 59
Détails du profil
Informations personnelles :
Âge : 31

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2003
Messages : 59
Points : 12
Points : 12
Envoyer un message via MSN à heddicmi
Merci pour ta réponse...

Concernant la création d'un DSN, il n'arrive pas à le créer. Quelque soit la possibilité ((local), NOM_ORDI)...

Mais à noter que je suis ici dans la situation => J'arrive maintenant à me connecter à SQL Server Express avec PHP...

Le message d'erreur qu'il me retourne est :

Echec lors de la connexion :
Etat SQL : '01000'
Erreur SQL Server : 2
[Microsoft][ODBC SQL Server Driver][Shared Memory]ConnectionOpen (Connect()).
Echec lors de la connexion :
Etat SQL : '08001'
Erreur SQL Server : 17
[Microsoft][ODBC SQL Server Driver][Shared Memory]Ce serveur SQL n'existe pas ou son accès est refusé.


Bref, à l'heure actuelle, aucun élément me permet de savoir pourquoi d'un instant à l'autre, PHP arrive à se connecter, sans avoir réussis pendant des heures auparavant.
heddicmi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 14h01   #7
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
Cherche pas à comprendre PHP est trop puissant ça dépasse notre imagination .
Moi j'ai enfin réussi à installer SQLSERver 2005 Express je vais tester ce soir si ça papote bien entre lui et php. ça fonctionne bien avec la version 2000.
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 14h03   #8
Candidat au titre de Membre du Club
 
Développeur informatique
Inscription : juin 2003
Messages : 59
Détails du profil
Informations personnelles :
Âge : 31

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : juin 2003
Messages : 59
Points : 12
Points : 12
Envoyer un message via MSN à heddicmi
Citation:
Envoyé par berceker united
Cherche pas à comprendre PHP est trop puissant ça dépasse notre imagination
Si tu le dis

Malheureusement, comprendre, telle est ma mission
heddicmi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/06/2006, 14h23   #9
Membre confirmé
 
Avatar de Cpas2latarte
 
Inscription : janvier 2006
Messages : 238
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 238
Points : 217
Points : 217
Par défaut c'est bien un problème de réseau

Cela ressemble bien à un problème de réseau

il te faut activer "l'interface " "IP" pour sql express.
De mémoire, c'est plus compliqué que sur MSDE, car il y a 2 trucs a faire
Il te faut utiliser SQL Server Configuration manager.
la, dans protocoles réseau tu dois activer IP et paramétrer les bon port (1433 par défaut)
de plus il faut dans la configuration de "SQL Native Clients" -> "protocoles client"
Activer IP (si ce n'est pas fait) et surtout le mettre en priorité 1.
Pour faire cela perso, j'ai du arrêter l'accès par mémoire partagé, car tant que la mémoire partagé était activé il resté en ordre 2
Cpas2latarte est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2006, 11h43   #10
Expert Confirmé
 
Avatar de berceker united
 
Développeur informatique
Inscription : février 2005
Messages : 2 982
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : février 2005
Messages : 2 982
Points : 3 567
Points : 3 567
J'ai testé hier chez moi et SQLServer Express et php5 papote tranquillement.
Merci à Cpas2latarte car l'explication m'a aidé !
berceker united est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h09.


 
 
 
 
Partenaires

Hébergement Web