Relier du PHP à un serveur SQL
louveteau_informatique
Messages postés
79
Date d'inscription
Statut
Membre
Dernière intervention
-
Pitet Messages postés 2826 Date d'inscription Statut Membre Dernière intervention -
Pitet Messages postés 2826 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
voila je voudrais relier mon site php a une base de données déjà existante
mon code est le suivant :
<?php
// Le serveur est au format : <hôte>\<nom d'instance> ou
// <serveur>,<port> quand on utilise un port différent de celui par défaut
$server = 'SRVTest';
// Connexion à MSSQL
$link = mssql_connect($server, 'admin', 'mot de passe');
if(!$link) {
die('Erreur de connexion à MSSQL');
}
?>
or quand je lance mon site j'ai ce message d'erreur :
Fatal error: Call to undefined function mssql_connect() in C:\wamp\www\application_php\connexion_serveur.php on line 8
Donc go le codage sur la page connexion_serveur.php ci dessus.
help me!!! J'en peu plus de cette erreur et je ne la vois pas....
voila je voudrais relier mon site php a une base de données déjà existante
mon code est le suivant :
<?php
// Le serveur est au format : <hôte>\<nom d'instance> ou
// <serveur>,<port> quand on utilise un port différent de celui par défaut
$server = 'SRVTest';
// Connexion à MSSQL
$link = mssql_connect($server, 'admin', 'mot de passe');
if(!$link) {
die('Erreur de connexion à MSSQL');
}
?>
or quand je lance mon site j'ai ce message d'erreur :
Fatal error: Call to undefined function mssql_connect() in C:\wamp\www\application_php\connexion_serveur.php on line 8
Donc go le codage sur la page connexion_serveur.php ci dessus.
help me!!! J'en peu plus de cette erreur et je ne la vois pas....
A voir également:
- Contact.php 370720
- Changer serveur dns - Guide
- Easy php - Télécharger - Divers Web & Internet
- Serveur dns gratuit - Guide
- Serveur entrant et sortant - Guide
- Serveur dns orange - Accueil - Guide box et connexion Internet
17 réponses
Bonjour
L'extension mssql n'est visiblement pas activée.
As-tu une ligne extension=php_mssql.dll dans ton fichier php.ini ?
https://www.php.net/manual/fr/mssql.installation.php
L'extension mssql n'est visiblement pas activée.
As-tu une ligne extension=php_mssql.dll dans ton fichier php.ini ?
https://www.php.net/manual/fr/mssql.installation.php
mysqli_connect, c'est pour mysql, pas mssql
on ne sait jamais
Si, on sait très bien que ça ne donnera rien..
on ne sait jamais
Si, on sait très bien que ça ne donnera rien..
alors je fais quoi je suis deseperer parce que en somme ce que je veu faire est simple
si jarrive a me connecter a cet ***** base de donnée pour info je suis sur netgbeans pour le codage
donc avec wamp
et ma base de donner est sur sql serveur management
si ça peu aider
si jarrive a me connecter a cet ***** base de donnée pour info je suis sur netgbeans pour le codage
donc avec wamp
et ma base de donner est sur sql serveur management
si ça peu aider
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
S'il y a un ; au début de la ligne, c'est que la ligne est en commentaire...
Enlève le ;
Enlève le ;
j'ai même fait ce qui est dit dans ces liens
https://stackoverflow.com/questions/7402713/how-do-i-get-the-sqlsrv-extension-to-work-with-php-since-mssql-is-deprecated
http://www.microsoft.com/en-us/download/details.aspx?id=20098
https://stackoverflow.com/questions/7402713/how-do-i-get-the-sqlsrv-extension-to-work-with-php-since-mssql-is-deprecated
http://www.microsoft.com/en-us/download/details.aspx?id=20098
1 - Après avoir supprimé le ; et redémarré Apache, le message d'erreur était-il toujours Call to undefined function mssql_connect() ?
2 - Quelle version de PHP as-tu ? Je doute que tu aies une version sans support mssql, alors que la ligne ;extension=php_mssql.dll était présente dans ton php.ini.
2 - Quelle version de PHP as-tu ? Je doute que tu aies une version sans support mssql, alors que la ligne ;extension=php_mssql.dll était présente dans ton php.ini.
PDO ne s'oppose pas à localhost, ce n'est pas le problème.
Dans le manuel PHP, il proposent cette solution :
https://docs.microsoft.com/en-us/sql/connect/php/microsoft-php-driver-for-sql-server?redirectedfrom=MSDN&view=sql-server-ver15
Je ne peux que t'inviter à la suivre.
Enfin si, je peux te proposer autre chose mais je ne sais pas si c'est acceptable pour ton application : ne peux-tu pas transférer le contenu de ta base MS SQL vers une base mySQL, pour laquelle tu auras tous les outils et le support en PHP ?
Dans le manuel PHP, il proposent cette solution :
https://docs.microsoft.com/en-us/sql/connect/php/microsoft-php-driver-for-sql-server?redirectedfrom=MSDN&view=sql-server-ver15
Je ne peux que t'inviter à la suivre.
Enfin si, je peux te proposer autre chose mais je ne sais pas si c'est acceptable pour ton application : ne peux-tu pas transférer le contenu de ta base MS SQL vers une base mySQL, pour laquelle tu auras tous les outils et le support en PHP ?
Alors je ne vois pas d'autre solution que le lien https://docs.microsoft.com/en-us/sql/connect/php/microsoft-php-driver-for-sql-server?redirectedfrom=MSDN&view=sql-server-ver15.
N'étant pas moi-même utilisateur de MS SQL, je n'ai pas l'expérience de ce problème et je crains de ne pas pouvoir t'aider davantage.
Bonne chance pour la suite.
N'étant pas moi-même utilisateur de MS SQL, je n'ai pas l'expérience de ce problème et je crains de ne pas pouvoir t'aider davantage.
Bonne chance pour la suite.
je vais voir cela j'ai fait un test avec ces codes la mais j'ai un message d'erreur, vous verrez peut être mieux que moi d'ou viens le probleme:
apparement le probleme viendrai dla ligne include "/pdo/pdo_connect.php"; mais je reste sans voix
<?php
include "/pdo/pdo_connect.php";
function readAllContact()
{
$pdo= open();
$query = 'SELECT *nom_contact FROM contact;';
$cursor = $pdo->query($query);
$lescontacts = $cursor->fetchAll();
return $lescontacts;
}
?>
et voici le code que j'ai mis pour me connecter a la base de donnée
<?php
function open()
{
try {
$connStr =new PDO("sqlsrv:Server=SRVTest;Database=woutils");;
$arrExtraParam= array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8");
$pdo = new PDO($connStr, 'admin', 'password', $arrExtraParam);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return $pdo;
}
catch(PDOException $e) {
$msg = 'ERREUR PDO dans ' . $e->getFile() . ' L.' . $e->getLine() . ' : ' . $e->getMessage();
die($msg);
}
}
?>
apparement le probleme viendrai dla ligne include "/pdo/pdo_connect.php"; mais je reste sans voix
<?php
include "/pdo/pdo_connect.php";
function readAllContact()
{
$pdo= open();
$query = 'SELECT *nom_contact FROM contact;';
$cursor = $pdo->query($query);
$lescontacts = $cursor->fetchAll();
return $lescontacts;
}
?>
et voici le code que j'ai mis pour me connecter a la base de donnée
<?php
function open()
{
try {
$connStr =new PDO("sqlsrv:Server=SRVTest;Database=woutils");;
$arrExtraParam= array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8");
$pdo = new PDO($connStr, 'admin', 'password', $arrExtraParam);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return $pdo;
}
catch(PDOException $e) {
$msg = 'ERREUR PDO dans ' . $e->getFile() . ' L.' . $e->getLine() . ' : ' . $e->getMessage();
die($msg);
}
}
?>
j'ai un message d'erreur
Il ne sert pas à grand chose de dire que tu as un message d'erreur : il faut recopier le message.
À mon avis, il te dit qu'il ne trouve pas le fichier à inclure /pdo/pdo_connect.php. Tel que tu l'as écrit, ça suppose que ton dossier /pdo est à la racine de ton disque dur, ce dont je doute. Enlève le / avant pdo, si ce dossier est bien un sous-dossier de celui qui contient ton script.
Il ne sert pas à grand chose de dire que tu as un message d'erreur : il faut recopier le message.
À mon avis, il te dit qu'il ne trouve pas le fichier à inclure /pdo/pdo_connect.php. Tel que tu l'as écrit, ça suppose que ton dossier /pdo est à la racine de ton disque dur, ce dont je doute. Enlève le / avant pdo, si ce dossier est bien un sous-dossier de celui qui contient ton script.
oui pardon jai oublier de mettre le messages d'erreur
( ! ) Warning: include(/pdo/pdo_connect.php) [<a href='function.include'>function.include</a>]: failed to open stream: No such file or directory in C:\wamp\www\application_php\pdo\pdo_contact.php on line 2
Call Stack
# Time Memory Function Location
1 0.0062 370720 {main}( ) ..\index.php:0
2 0.0124 376080 include( 'C:\wamp\www\application_php\pages\lister_contact.php' ) ..\index.php:31
3 0.0172 380240 include( 'C:\wamp\www\application_php\pdo\pdo_contact.php' ) ..\lister_contact.php:3
( ! ) Warning: include() [<a href='function.include'>function.include</a>]: Failed opening '/pdo/pdo_connect.php' for inclusion (include_path='.;C:\php\pear') in C:\wamp\www\application_php\pdo\pdo_contact.php on line 2
Call Stack
# Time Memory Function Location
1 0.0062 370720 {main}( ) ..\index.php:0
2 0.0124 376080 include( 'C:\wamp\www\application_php\pages\lister_contact.php' ) ..\index.php:31
3 0.0172 380240 include( 'C:\wamp\www\application_php\pdo\pdo_contact.php' ) ..\lister_contact.php:3
( ! ) Fatal error: Call to undefined function open() in C:\wamp\www\application_php\pdo\pdo_contact.php on line 6
Call Stack
# Time Memory Function Location
1 0.0062 370720 {main}( ) ..\index.php:0
2 0.0124 376080 include( 'C:\wamp\www\application_php\pages\lister_contact.php' ) ..\index.php:31
3 0.0211 379504 readAllContact( ) ..\lister_contact.php:5
( ! ) Warning: include(/pdo/pdo_connect.php) [<a href='function.include'>function.include</a>]: failed to open stream: No such file or directory in C:\wamp\www\application_php\pdo\pdo_contact.php on line 2
Call Stack
# Time Memory Function Location
1 0.0062 370720 {main}( ) ..\index.php:0
2 0.0124 376080 include( 'C:\wamp\www\application_php\pages\lister_contact.php' ) ..\index.php:31
3 0.0172 380240 include( 'C:\wamp\www\application_php\pdo\pdo_contact.php' ) ..\lister_contact.php:3
( ! ) Warning: include() [<a href='function.include'>function.include</a>]: Failed opening '/pdo/pdo_connect.php' for inclusion (include_path='.;C:\php\pear') in C:\wamp\www\application_php\pdo\pdo_contact.php on line 2
Call Stack
# Time Memory Function Location
1 0.0062 370720 {main}( ) ..\index.php:0
2 0.0124 376080 include( 'C:\wamp\www\application_php\pages\lister_contact.php' ) ..\index.php:31
3 0.0172 380240 include( 'C:\wamp\www\application_php\pdo\pdo_contact.php' ) ..\lister_contact.php:3
( ! ) Fatal error: Call to undefined function open() in C:\wamp\www\application_php\pdo\pdo_contact.php on line 6
Call Stack
# Time Memory Function Location
1 0.0062 370720 {main}( ) ..\index.php:0
2 0.0124 376080 include( 'C:\wamp\www\application_php\pages\lister_contact.php' ) ..\index.php:31
3 0.0211 379504 readAllContact( ) ..\lister_contact.php:5
1 - S'il te plaît utilise le bouton 'Répondre' pour répondre : une réponse n'est pas un commentaire.
2 - Pourquoi ne tiens-tu pas compte de toute ma réponse ? Je t'avais expliqué que l'erreur était probablement celle-là, et comment y remédier : qu'as-tu fait de ces indications ? C'est pénible pour moi de toujours rappeler ce que je disais dans le message précédent.
2 - Pourquoi ne tiens-tu pas compte de toute ma réponse ? Je t'avais expliqué que l'erreur était probablement celle-là, et comment y remédier : qu'as-tu fait de ces indications ? C'est pénible pour moi de toujours rappeler ce que je disais dans le message précédent.
j'ai enlever le / comme tu le disais mais ca ne change rien du tout
j'ai tout fait rien ne marche -_-
j'ai tout fait rien ne marche -_-
Tu l'as enlevé pour me faire plaisir ou tu as compris pourquoi je te le demandais ? Car tu ne devrais rien faire sans comprendre pourquoi : je ne suis pas devant ton PC, je ne sais pas comment sont organisés tes répertoires. J'essaye de deviner et de te guider, mais toi tu DOIS comprendre ce que tu fais pour adapter mes suggestions.
C'est à TOI et pas à moi de savoir où se trouve ton fichier à inclure par rapport à ton script, et d'écrire le chemin en conséquence. Ce n'est pas un problème de base de données, ça, c'est du PHP tout simple.
C'est à TOI et pas à moi de savoir où se trouve ton fichier à inclure par rapport à ton script, et d'écrire le chemin en conséquence. Ce n'est pas un problème de base de données, ça, c'est du PHP tout simple.
bah on va dire que j'ai encore du mal avec tout ça....
je comprend oui mais peut être pas tout completement...
je comprend oui mais peut être pas tout completement...
Du mal avec tout quoi ? Il s'agit simplement - pour le message "failed to open stream:" - de savoir où se trouve ton fichier et d'écrire le chemin d'accès correctement.
mon dossier est composer de la facon suivante
dans un dossier application php on a :
- 1 dossier pages ou il se trouve toute les pages de l'application
-1 dossier pdo pour tout ce qui concerne les requete sql
et un index.php
dans un dossier application php on a :
- 1 dossier pages ou il se trouve toute les pages de l'application
-1 dossier pdo pour tout ce qui concerne les requete sql
et un index.php
bon j'ai tout remis dans un seul et même dossier
la plus d'erreur enfin plus d'erreur si une. elle persiste la sale bête...
avec ce code la:
<?php
function open()
{
try {
$connStr =new PDO("sqlsrv:Server=SRVTest\SQL2008R2;Database=woutils");;
$arrExtraParam= array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8");
$pdo = new PDO($connStr, 'sa', 'p', $arrExtraParam);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return $pdo;
}
catch(PDOException $e) {
$msg = 'ERREUR PDO dans ' . $e->getFile() . ' L.' . $e->getLine() . ' : ' . $e->getMessage();
die($msg);
}
}
?>
le message d'erreur est ERREUR PDO dans C:\wamp\www\genesys\connexion.php L.5 : could not find driver
bon est avec ce code ci (code du départ)
<?php
// Le serveur est au format : <hôte>\<nom d'instance> ou
// <serveur>,<port> quand on utilise un port différent de celui par défaut
$server = 'SRVTest\SQL2008R2';
// Connexion à MSSQL
$link = mssql_connect($server, 'sa', 'p');
if(!$link) {
die('Erreur de connexion à MSSQL');
}
?>
le message d'erreur est ( ! ) Fatal error: Call to undefined function mssql_connect() in C:\wamp\www\genesys\connexion.php on line 8
Call Stack
# Time Memory Function Location
1 0.0049 368024 {main}( ) ..\index.php:0
2 0.0088 371304 include( 'C:\wamp\www\genesys\rechercher_contact.php' ) ..\index.php:30
3 0.0129 375432 include( 'C:\wamp\www\genesys\requetecontact.php' ) ..\rechercher_contact.php:8
4 0.0167 378232 include( 'C:\wamp\www\genesys\connexion.php' ) ..\requetecontact.php:2
la plus d'erreur enfin plus d'erreur si une. elle persiste la sale bête...
avec ce code la:
<?php
function open()
{
try {
$connStr =new PDO("sqlsrv:Server=SRVTest\SQL2008R2;Database=woutils");;
$arrExtraParam= array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8");
$pdo = new PDO($connStr, 'sa', 'p', $arrExtraParam);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return $pdo;
}
catch(PDOException $e) {
$msg = 'ERREUR PDO dans ' . $e->getFile() . ' L.' . $e->getLine() . ' : ' . $e->getMessage();
die($msg);
}
}
?>
le message d'erreur est ERREUR PDO dans C:\wamp\www\genesys\connexion.php L.5 : could not find driver
bon est avec ce code ci (code du départ)
<?php
// Le serveur est au format : <hôte>\<nom d'instance> ou
// <serveur>,<port> quand on utilise un port différent de celui par défaut
$server = 'SRVTest\SQL2008R2';
// Connexion à MSSQL
$link = mssql_connect($server, 'sa', 'p');
if(!$link) {
die('Erreur de connexion à MSSQL');
}
?>
le message d'erreur est ( ! ) Fatal error: Call to undefined function mssql_connect() in C:\wamp\www\genesys\connexion.php on line 8
Call Stack
# Time Memory Function Location
1 0.0049 368024 {main}( ) ..\index.php:0
2 0.0088 371304 include( 'C:\wamp\www\genesys\rechercher_contact.php' ) ..\index.php:30
3 0.0129 375432 include( 'C:\wamp\www\genesys\requetecontact.php' ) ..\rechercher_contact.php:8
4 0.0167 378232 include( 'C:\wamp\www\genesys\connexion.php' ) ..\requetecontact.php:2
Salut,
Wamp ne possède pas l'extension pour se connecter en mssql.
Tu peux trouver une solution ici : https://openclassrooms.com/forum/sujet/travailler-avec-php-mssql-express-sous-wamp
Bonne journée
Wamp ne possède pas l'extension pour se connecter en mssql.
Tu peux trouver une solution ici : https://openclassrooms.com/forum/sujet/travailler-avec-php-mssql-express-sous-wamp
Bonne journée
donc ca devrai marcher non??
jsui encore novice en code php