1. ホーム
  2. php

[解決済み】Fatal error: 未定義の関数 sqlsrv_connect() を呼び出した。

2022-01-21 19:05:29

質問

同じテーマの質問に関する投稿をかなり見かけましたが、まだ解決できないので質問させていただきます。私は私のPHPスクリプトでSQLに接続しようとしています。私の接続文字列は次のとおりです。

/* Specify the server and connection string attributes. */
$serverName = "xxx-PC\SQLExpress";
$connectionOptions = array("Database"=>"Salesforce");
$conn = sqlsrv_connect($serverName, $connectionOptions);
if($conn === false)
{
      die(print_r(sqlsrv_errors(), true));
}

をインストールし、インクルードしています。 php.ini ファイルを作成します。 C:\wamp\bin\php\php5.4.16 :

extension=c:/wamp/bin/php/php5.4.16/ext/php_sqlsrv_53_ts.dll

私の wampserver は正常に動作しており wampapachewampsqld サービスを提供します。php.exeを正常に実行することができます。しかし SQL Server 2008 R2 を使用しています。助けてください。

EDIT 1: wampサーバーはwampmysqlサービスを実行していますが、私が SQL Server 2008 R2 . これが原因なのでしょうか?私は MySQL ではなく SQL ? 何かご指摘はありますか?

EDIT 2: 私は sqlsrv を実行すると phpinfo() を追加していますが extension=php_sqlsrv_54_ts.dll の中に php.ini ファイルを作成します。

解決方法は?

これは は、私の答えにたどり着くのを助けてくれた。2つの php.ini のファイルがあり、私の場合、wampのために配置されています。ひとつはphpフォルダの下にあり、もうひとつは C:\wamp\bin\apache\Apachex.x.x\bin フォルダーに格納されます。を通してSQLに接続すると sqlsrv_connect 関数を参照しています。 php.ini ファイルを apache フォルダーに格納します。このファイルに、以下のように(バージョンに応じて)追加してください。

extension=c:/wamp/bin/php/php5.4.16/ext/php_sqlsrv_53_ts.dll