0

PHP への変換を任された既存の ASP スクリプトがあります。接続文字列は次のようになります。

$conn = new COM("ADODB.Connection");

if(strpos($_SERVER["HTTP_HOST"],"localhost")){
$conn->Open("dsn=xxxxx;uid=xxxxx;pwd=xxxxxxxx");
}elseif(strpos($_SERVER["HTTP_HOST"],"dpsql")){
$conn->Open("dsn=xxxxx;uid=xxxxx;pwd=xxxxxxxx");
}else{
$conn->Open("Provider=SQLOLEDB; Data Source=xxx.xxxxxxxxxxxx.com; Initial Catalog=xxxxxxxxxxxxxx; User ID=xxxxxxxxxx; Password=xxxxxxx;network=xxxxxxx");
}

私が見つけることができる例のほとんどは、PHP COM 拡張機能の使用を伴いますが、私は Linux でホストされている PHP バージョンを使用しており、COM 拡張機能が Windows 用であるという条件でホスティングから言われました。これらすべてで動作する接続オブジェクトを作成する方法を見つけようと数時間を費やしましたが、私はよりフロントエンド指向です。PDO 接続を使用してみましたが、役に立ちませんでした。どんな助けでも大歓迎です。

アップデート

HostGatorが私のためにインストールしたのはそれだけなので、SQLiteドライバーでPDOを使用して接続できました。PDO についてはあまり詳しくありませんが、Google で検索して、その使用方法について理解できることを確認します。現在立ち往生している:

$conn = $c->prepare($g_sql);
$conn->Execute();

エラーを返す:

Fatal error: Call to a member function Execute() on a non-object
4

2 に答える 2

1

PHP には、MS SQL データベースへの接続に使用できるいくつかのオプションがあります。

必要なものに最適なオプションはCOM("ADODB.Connection")クラスです。

やってみてください。

$conn = new COM("ADODB.Connection") or die("Cannot start ADO");

$conn->open("Provider=SQLOLEDB; Data Source=xxx.xxxxxxxxxxxx.com; Initial Catalog=xxxxxxxxxxxxxx; User ID=xxxxxxxxxx; Password=xxxxxxx;network=xxxxxxx");

$query = $conn->execute("SELECT field FROM table");

詳細については、こちらをご覧ください: http://www.php.net/manual/en/class.com.php

于 2013-09-23T22:40:04.020 に答える
0
$server = 'xxx.xxxxxxxxxxxx.com';
$conn = mssql_connect($server, 'youruserid', 'yourpassword');

また、これを確認してください(UNIXを使用している場合を除きます。その場合、おそらく同等の手順を実行する必要があります

http://www.iis.net/learn/application-frameworks/install-and-configure-php-on-iis/install-the-sql-server-driver-for-php

于 2013-09-24T00:47:35.470 に答える