web-dev-qa-db-fra.com

Erreur fatale: appel de la fonction indéfinie sqlsrv_connect () dans C:\xampp\htdocs

J'utilise 

  • Xampp version 3.2.1 avec PHP version 5.6.8. 
  • Serveur Microsoft Azure SQL

OBJECTIF

J'essaie de créer une application Web qui permettra d'accéder à ma base de données et de pouvoir SÉLECTIONNER, INSÉRER, METTRE À JOUR et SUPPRIMER. enregistrements. 


PROBLÈME

Je ne peux pas me connecter au serveur de base de données 


ERREUR

Erreur fatale: appel de la fonction non définie sqlsrv_connect () dans C:\xampp\htdocs\BLT\Employee_Database .php à la ligne 25


CODE

<html>
<head>
    <Title>Employee Database</Title>
</head>
<body>
<form method="post" action="?action=add" enctype="multipart/form-data">
    Last name <input type="text" name="LastName" id="LastName"/></br>
    First name <input type="text" name="FirstName" id="FirstNamne"/></br>
    E-mail address <input type="text" name="Email" id="Email"/></br>
    User Id <input type="text" name="UserId" id="UserId"/></br>
    Password <input type="password" name="Password" id="Password"/></br>
    <input type="submit" name="submit" value="Submit"/>
</form>

<?php
$serverName = "jy4nij6vuy.database.windows.net,1433";
$connectionOptions = array("Database" => "robertfarb",
    "UID" => "robertFarb",
    "PWD" => "******");
$conn = sqlsrv_connect($serverName, $connectionOptions);

if ($conn === false) {
    die(print_r(sqlsrv_errors(), true));
}
?>

</body>
</html>

This IS Ce que j'ai essayé SO Loin

  • J'ai installé Microsoft PHP pour les pilotes SQL et suivi toutes les instructions pour charger le pilote, mais cela ne semble pas fonctionner! 
  • J'ai ajouté le fichier php_sqlsrv_56.ts.dll au dossier extensions de PHP, ainsi que le php_pdo_sqlsrv_56.ts.dll
  • J'ai également ajouté la ligne extension=php_sqlsrv_56.ts.dll au fichier php.ini.

Toute aide serait très appréciée!

10
Robert Farb

L'extension MSSQL n'est plus disponible sous Windows avec PHP 5.3 ou plus tard. SQLSRV, un pilote alternatif pour MS SQL est disponible à partir de Microsoft: » http://www.Microsoft.com/en-us/download/details.aspx?id=20098

Pas à pas

  1. Téléchargez SQLSRV32.EXE (pilotes Microsoft pour PHP pour SQL Server) à l'adresse: http://www.Microsoft.com/en-us/download/details.aspx?id=20098

  2. Choisissez le chemin: C:\xampp\php\ext

enter image description here

  1. Décommenter ou ajouter extension = php_sqlsrv_56_ts.dll dans php.ini

  2. Redémarrez Apache à partir du panneau de configuration XAMPP (Stop/Start)

Je l'ai testé et ça marche à 100%

Vous pouvez trouver les fichiers binaires compilés les plus récents dans le référentiel official Microsoft Git .

19
Leandro Papasidero

J'ai suivi le guide de Lea Tano et je n'ai pas travaillé. J'avais besoin de plus d'étapes. Du moins pour Windows7 (ou pour mon système), il manque certaines étapes (par exemple, ceux pour lesquels MSSQL Server n'est pas installé sur le même serveur/machine).

Voici comment je l'ai fait fonctionner:

  1. Suivez le guide Lea Tano pour installer SQLSRV 5.6 (ou 5.3 ou ..)
  2. Téléchargez et installez le pilote OBDC 11 (msodbcsql.msi)
  3. Téléchargez et installez le client natif SQL Server (fichier sqlncli.msi)
  4. Vérifiez si installé (si non, téléchargez et installez) Visual C++ Redistributable VS2012 Update4 (vcredist_x86.exe)
6
Jordi

La réponse de Léa devrait faire l'affaire pour vous. Il est très important que vous téléchargiez PHP 5.6 à partir du Web PI - https://www.Microsoft.com/web/downloads/platform.aspx

Utilisez IE lorsque vous téléchargez Web PI sur votre machine. Faites-moi savoir si cela vous convient, sinon, jetez un coup d'œil au blog suivant. Il s'agit d'un guide de démarrage pour Azure SQL DB + PHP + IIS.

http://blogs.msdn.com/b/sqlphp/archive/2015/05/11/getting-started-with-php-and-Microsoft-sql-server.aspx

Meilleur,
Rencontrez Bhagdev
Gestionnaire de programme, Microsoft

0
meet-bhagdev