PHP が SQL Server 2008 に接続できません。

WBOY
リリース: 2016-06-23 14:39:11
オリジナル
1243 人が閲覧しました

オペレーティング システムは win Server 2008 r2、データベースは SQL Server 2008、PHP バージョン 5.4.14、
出力 phpinfo を見てください
-------------------- -------------------------------------------------- - --------------
PDO サポートが有効です
PDO ドライバー mysql、sqlite、sqlsrv

ただし、sqlsrv を使用してデータベースにアクセスする場合、「HTTP」は機能しません。エラー 500.0」プロンプトが常に表示されます。
--- -------------------------------------- ----------- ------------------------------
モジュール FastCgiModule
通知 ExecuteRequestHandler
ハンドラー PHP54_via_FastCGI
エラー コード 0x00000000


これはアクセス操作コードで、実際には SQL サーバー用の PHP 用 Microsoft ドライバーからコピーされたルーチンです:

<?php/* Specify the server and connection string attributes. */$serverName = "(local)";$connectionInfo = array( "Database"=>"myDB1");/* Connect using Windows Authentication. */$conn = sqlsrv_connect( $serverName, $connectionInfo);if( $conn === false ){     echo "Unable to connect.</br>";     die( print_r( sqlsrv_errors(), true));}else     echo "great! </br>";?>
ログイン後にコピー


ディスカッション (解決策) への返信

php を設定するだけです。 ini、??php?mssql?expansion

PDO ドライバー mysql、sqlite、sqlsrv ???
これだけですか?
プログラムを書くだけです

<?phpvar_dump(function_exists('sqlsrv_connect'));
ログイン後にコピー
ログイン後にコピー
で出力がどのようになるかを確認するだけです


PDO ドライバー mysql、sqlite、sqlsrv
これだけですか?
プログラムを作成するだけです

<?phpvar_dump(function_exists('sqlsrv_connect'));
ログイン後にコピー
ログイン後にコピー
で出力がどのようになるかを確認してください

出力は HTTP エラー 500.0 - 内部サーバー エラーです!
PHP を間違ってインストールしましたか? server2008システムなので、MicrosoftのWebプラットフォームインストールでインストールされたPHP 5.4を使用しています。確かにsystem32配下のfcgiXXX.dllは見つかりませんが、phpinfo()で情報を出力できます。 。 。 。


PDO
--------------------------------------
PDO サポートが有効になりました
PDOドライバー mysql、sqlite、sqlsrv

本当にこれだけです!他にインストールするものはありますか?

php.ini、php?mssql 拡張を設定するだけです
Baidu でよく検索したところ、5.2 より前のバージョンでは使用できることがわかりました。そのため、この方法を使用します。推奨されません。また、php_mssql.dll をダウンロードしてコメントを追加しようとしましたが、うまくいきませんでした

私が使用した php のバージョンは 5.2.6 で、通常どおり使用できています

冗談は言わないでください。
一文
var_dump(function_exists('sqlsrv_connect'));
これは HTTP エラー 500.0 - 内部サーバー エラーである可能性があります
せいぜい bool(false) です

冗談は言わないでください。
一文
var_dump(function_exists('sqlsrv_connect'));
これは HTTP エラー 500.0 - 内部サーバー エラーである可能性があります
せいぜい bool(false) です
はは、確かに今はそのような感じでしたね!
現在、5.3 としてインストールし、SQL サーバー用の PHP 用の Microsoft ドライバーをダウンロードしました。最終的に http500 エラーは発生しませんでした。
5.3 の ini ファイルは 5.4 の ini ファイルとは大きく異なります。キーの値を入力する必要があるだけでなく、キーの名前も追加する必要があります


冗談は言わないでください。
一文
var_dump(function_exists('sqlsrv_connect'));
これは HTTP エラー 500.0 - 内部サーバー エラーである可能性があります
せいぜい bool(false) です
はは、確かに今はそのような感じでしたね!
現在、5.3 としてインストールし、SQL サーバー用の PHP 用の Microsoft ドライバーをダウンロードしました。最終的に http500 エラーは発生しませんでした。
5.3 の ini ファイルは 5.4 とは大きく異なります。キーの値を入力する必要があるだけでなく、キーの名前も追加する必要があります。問題は解決されましたか?

接続できません。
Array ( [0] => Array ( [0] => 08001 [SQLSTATE] => 08001 [1] => 2 [code] => 2 [2] => [Microsoft][SQLサーバー ネイティブ クライアント 11.0] 名前付きパイプ プロバイダー: SQL サーバーへの接続を開けませんでした [2]。 [メッセージ] => [Microsoft][SQL サーバー ネイティブ クライアント 11.0] 名前付きパイプ プロバイダー: SQL サーバーへの接続を開けませんでした [ 2]. ) [1] => 配列 ( [0] => HYT00 [SQLSTATE] => HYT00 [1] => 0 [コード] => 0 [2] => [Microsoft] SQL Server Native Client 11.0]ログイン タイムアウト 期限切れ [メッセージ] => [Microsoft][SQL Server Native Client 11.0]ログイン タイムアウト 期限切れ ) [2] => 配列 ( [0] => 08001 [SQLSTATE] => 08001 [1] => 2 [code] => 2 [2] => [Microsoft][SQL Server Native Client 11.0]SQL Server への接続を確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないか、アクセスできません。インスタンス名が正しいかどうか、および SQL Server がリモート接続を許可するように構成されているかどうかを確認してください。詳細については、SQL Server Books Online を参照してください。 [メッセージ] => [Microsoft][SQL Server Native Client 11.0] SQL Server への接続を確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しました。 サーバーが見つからないか、アクセスできません。 インスタンス名が正しいかどうか、および SQL Server がリモート接続を許可するように構成されているかどうかを確認してください。 詳細については、SQL Server Books Online を参照してください。 ) )

-------------------------------------------- ---------------------------------------
唉,また浪费俩
私が使用しているマイクロプラットフォームの Web プラットフォームに PHP がインストールされ、SQL Server 2012 のネイティブ クライアントのインストールが自動的に行われます。 fastcgi も使用しない限り、これも実行できません。ただし、これをインストールすると、SQL Server 2008 データ レベルが 100 ブロックに達する可能性があります。以下を参照してください。吧!

接続できません。
Array ( [0] => Array ( [0] => 08001 [SQLSTATE] => 08001 [1] => 2 [code] => 2 [2] => [Microsoft][SQLサーバー ネイティブ クライアント 11.0] 名前付きパイプ プロバイダー: SQL サーバーへの接続を開けませんでした [2]。 [メッセージ] => [Microsoft][SQL サーバー ネイティブ クライアント 11.0] 名前付きパイプ プロバイダー: SQL サーバーへの接続を開けませんでした [ 2]. ) [1] => 配列 ( [0] => HYT00 [SQLSTATE] => HYT00 [1] => 0 [コード] => 0 [2] => [Microsoft] SQL Server Native Client 11.0]ログイン タイムアウト 期限切れ [メッセージ] => [Microsoft][SQL Server Native Client 11.0]ログイン タイムアウト 期限切れ ) [2] => 配列 ( [0] => 08001 [SQLSTATE] => 08001 [1] => 2 [code] => 2 [2] => [Microsoft][SQL Server Native Client 11.0]SQL Server への接続を確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないか、アクセスできません。インスタンス名が正しいかどうか、および SQL Server がリモート接続を許可するように構成されているかどうかを確認してください。詳細については、SQL Server Books Online を参照してください。 [メッセージ] => [Microsoft][SQL Server Native Client 11.0] SQL Server への接続を確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しました。 サーバーが見つからないか、アクセスできません。 インスタンス名が正しいかどうか、および SQL Server がリモート接続を許可するように構成されているかどうかを確認してください。 詳細については、SQL Server Books Online を参照してください。 ) )

-------------------------------------------- ---------------------------------------
唉,また浪费俩
私が使用しているマイクロプラットフォームの Web プラットフォームに PHP がインストールされ、SQL Server 2012 のネイティブ クライアントのインストールが自動的に行われます。 fastcgi も使用しない限り、これも実行できません。ただし、これをインストールすると、SQL Server 2008 データ レベルが 100 ブロックに達する可能性があります。以下を参照してください。吧!

参照 DLL 文件バージョン本不对

还是バージョン本不適合问题....

最後後也不解决呀,逼得只能现学asp.net了,要不是要要求SQL server,我用mysql
微速度は私から、明白は P(拍)H(黄)P(片) の死因です!!!

私は可、PHP バージョン 5.4.16 接続 sql2008 接続成功
sqlsrv 3.0、2.0 の無説明、方法は
php.ini を追加する
extension=php_pdo_sqlsrv_54_nts.dll
extension=php_sqlsrv_54_nts.dll

データ库链接:
$conn= new PDO("s qlsrv:サーバー=127.0.0.1; Database=abc","user","123456") または die ("PDO 接続に失敗しました。");

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート