2012-02-12 7 views
0

私は、SQL Serverデータベースに接続する必要のあるAndroidアプリケーションのWebサービスを構築しています。私は私の家のコンピュータのPHP(WAMP)をSQL Serverデータベースに接続しようとしています。PHPを使用してSQL Serverデータベースに接続する方法は?

ただし、私はSQL Serverを経験しておらず、どのように処理するのか分かりません。 SQL Serverでは、既定の設定とWindows認証を使用しているため、接続文字列に何を入力するのか分かりません。あなた以下

は私の接続があります。

$connStr = "PROVIDER=SQLOLEDB;SERVER=".$myServer.";UID=".$myUser.";PWD=".$myPass.";DATABASE=".$myDB; 
$conn->open($connStr); //Open the connection to the database 

私がこれまでどこにも具体的な例を発見していないが、私は、変数​​、$myUserなどは、Windowsの場合になるために必要なものを知っている必要があります認証。

また、SQL Serverでユーザー名とパスワードの認証に切り替えるにはどうすればよいですか。

LE:マイクロソフトのSQL Server 2008およびSQL Server Management Studioのによると

答えて

4

は、PHPで異なるデータベースに接続するための受け入れられた方法です。また、ここでdriver for MS-SQL

は(From PDO MSSQL

$con = new PDO("sqlsrv:Server=localhost;Database=testdb", "UserName", "Password"); 
+0

すみません...これらについては、私はかなりノブです。だから私は私の現在の試みを捨て、PDOに行くつもりです。それで、私はMicrosoftのものをインストールしたのと同じように、PHP用の別のドライバをインストールする必要があります。 :D – Eugen

+0

まず、phpinfo()を実行してサポートを確認します。 「PDOサポート\tが有効になっている」「PDOドライバ\t dblib、mysql、odbc、pgsql、sqlite、sqlite2」のようなものが表示されるはずですが、dblibまたはsqlsrv(いずれかは* nixとwindows afaik)、もしあなたがそれを使用することができれば、あなたが適切な.dllをphpに追加する必要がないならば、それを使うことができます。ini in your server(wamp)、次のようなものを探してください:extension = php_pdo_mssql.dll(私が推測するようにコメントしておいてください)私はLinuxで働いていますので、Windows下のファイルと拡張子の正確な場所を教えてください。 Good Luck :) –

+0

[これはwampのサーバーサイトのスレッドです](http://forum.wampserver.com/read.php?2,68421)これは良い出発点かもしれません。また、このディスカッションをチャットに移すことができます。私はそこにお手伝いしようとすることができます –

-1

使用:http://www.php.net/manual/en/function.mssql-connect.phpを、

mssql_connect($servername, $username, $password) 

では、Microsoft SQLデータベースに接続する方法です。

+0

この拡張機能は、PHP 5.3以降のWindowsでは使用できなくなりました。 http://www.php.net/manual/en/intro.mssql.php – iDifferent

+0

RTFMの回答はコメントでなければなりません。 – rdlowrey

+0

人類が大いに優れた 'PDO'拡張の代わりにそれらの使用を主張するのを止めれば(そして恐ろしい"チュートリアル "サイトがそれを主張するのを止めるならば)、同じ運命は' mysql * '拡張を待っています。 – rdlowrey

2

Microsoftはdriver for PHP作られた例でありますが、私はそれはPDOで行く方が良いと思います。

あなたがPDO_SQLSRV使用することができます

:(PHP 5.3以降のWindowsでは使用できません)

$dbh = new PDO("sqlsrv:Server=$hostdb;Database=$dbname", $usr, $psw); 

またはPDO_DBLIBを使用する:関連ノートで

$dbh = new PDO("dblib:host=$hostdb;dbname=$dbname", $usr, $psw);  
0

、同じ運命がmysqlのを待っては*の拡張機能であれば人々はこれまでとはまったく優れたPDO拡張の代わりに、それらの使用を主張することをやめてしまいます(ひどい「チュートリアル」サイトでは、それを推奨しません)。 - rdlowrey Feb 12 '12 at 14:58

0
$dbh = new PDO("sqlsrv:Server=$hostdb;Database=$dbname", $usr, $psw); 
関連する問題