PHP を使用して、ODBC 接続を介して Sybase データベース (社内アプリケーションで既に使用されている) と通信する Web サイトをセットアップしました。これにより、現場のユーザーが社内データベースにアクセスできるようになりました。これは 2003 NT サーバー上にあり、すべて正常に動作しました。
次に、XP Pro マシンに同様のサイトをセットアップしました (今回は自分で)。Web サイトにはアクセスでき、PHP プログラミングは機能しますが、PHP ページはデータベースにアクセスできません。エラーは発生しませんphpinfo。2 つのサイト (動作しているサイトと動作していないサイト) を確認しましたが、何も思いつきませんでした。
ODBC を介したデータベースへの接続が機能しないことを確信しました。XP Pro の構成は 2003 NT マシンとは異なるはずですか? ODBC は両方のマシンで同じように設定されています。
<?php
$Page_Name = "apptlist1.php";
import_request_variables('gpc');
$db_host = "wintermlocal";
$db_server_name = "winpest";
$db_name = "windata.db";
$db_file = "c:\data\windata.db";
$db_conn_name = "php_script";
$db_user = "dba";
$db_pass = "sql";
//================================================================
$connect_string = "Driver={Adaptive Server Anywhere 7.0};"
."CommLinks=tcpip(Host=$db_host);"
."ServerName=$db_server_name;"
."DatabaseName=$db_name;"
."DatabaseFile=$db_file;"
."ConnectionName=$db_conn_name;"
."uid=$db_user;pwd=$db_pass";
//================================================================
$connect = odbc_connect($connect_string,'','');
?>
警告: odbc_connect() [function.odbc-connect]:
SQL エラー: [Microsoft][ODBC ドライバー マネージャー]
データ ソース名が見つからず、既定のドライバーが指定されていません
22 行目の C:\Inetpub\wwwroot\allpro\apptlist1.php の SQLConnect の SQL 状態 IM002