こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

DB接続文字列がわかりませんSQLSERVER

PHPからsqlServer2005Expresseditionに接続ができません
DB接続文字列が間違っていると思います。
sqlserverのドライバのバージョンは3.0で
pdoとsqlserverのドライバが正しく適応されている事を
phpinfoで確認済みです

sqlserver management studioのデータベース インスタンス????は
YOUR-W97XBD33NB\SQLEXPRESSと記述されていました。
データベース名はsampleです。
ホストはlocalhost1台のパソコンで処理しています。
ユーザはsaでパスワードはmanagerです
pdoのプログラムにパスワード、ユーザ名が設定されていないのが気になります。
ソースはインターネットで検索したものを利用して記述しました



新米プログラマなので何をいっているかわからない所も多々あると思いますが
どうかご回答願います。

表示結果Failed to get DB handle:


ソース
<?php
try{

$serverName ="YOUR-W97XBD33NB\SQLEXPRESS";
$dbname = "sample";
$user = "sa";
$password ="manager";
$dbh = new PDO("sqlsrv:server = $serverName;Database = $dbname");
}catch(PDOException $e){
print("Failed to get DB handle:");
exit();
}
$stmt = $dbh-prepare("select * from shohin");
$stmt->execute();
while($row = $stmt->fetch()){
print_r($row);
}
unset($dbh);
unset($stmt);

投稿日時 - 2012-06-08 23:47:58

QNo.7522494

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(1)

ANo.1

>pdoのプログラムにパスワード、ユーザ名が設定されていないのが気になります。

$dbh = new PDO("sqlsrv:server = $serverName;Database = $dbname", $user, $password);

だったと思います。

投稿日時 - 2012-06-09 09:57:24

お礼

お忙しい中ご回答ありがとうございます。
まだ、ちょっと分からないのですが
severNameはYOUR-W97XBD33NB\SQLEXPRESSでよろしいでしょうかそれとも
serverNameはlocalhost\SQLEXPRESSでしょうか
それともserverNameはlocalhostだけでしょうか
また、dbnameはsampleでよろしいでしょうか
serverName,dbname,user,passwordの記入例をご回答お願いできませんでしょうか
お忙しい中申し訳ありません

投稿日時 - 2012-06-09 12:41:18

-広告-
-広告-
-広告-
-広告-