• 締切済み

mysql データ取得

db_name = AAA table_name = BBB _______ id name 1 tanaka 2 yamada 3 suzuki _______ 上記のidを指定して、 nameを取得するには どうしたらいいですか? 例)id = 1 を指定して返り値に   tanakaが代入される

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.4

デバッグするなら $sql = "select name from BBB where id=1"; $res = mysql_quer($sql,$$link) or die(mysql_error()); とします。 $resはリソースを返すのでそれ自体をprintしてもあまり意味がありません。

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.3

mysql_error($接続) これでエラーの理由が分かるはずですけど、 何か表示されませんでしたか?

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.2

DBにアクセスするには次の手順が必要です。 (1)DBサーバに接続する。 (2)データベースを選択する。 (3)クエリを実行する。 (4)フェッチする。 (5)フィールドの値を読み込む。 掲題だと、いきなり(3)のクエリを実行 しているし、(4)と(5)飛ばして値は取得 できません。第一、mysql_queryに接続 オブジェクトが指定されてないので、 成功するはずありません。 $接続 = mysql_connect($サーバ,$ユーザ,$パスワード) if ( !$接続 ) {   //接続できない時の処理   print("接続できません");   return ""; } if ( !mysql_select_db("AAA",$接続) ) {   //DBが選択できない時の処理   print(mysql_error($接続));   mysql_close($接続);   return ""; } $sql = "select name from BBB where id=1"; $結果セット = mysql_quer($sql,$接続); if ( !結果セット ) {   //クエリが失敗した時の処理   print(mysql_error($接続));   mysql_close($接続);   return ""; } $氏名 = ""; $レコード = mysql_fetch_object($結果セット); if ( $レコード != FALSE ) {   $氏名 = $レコード->name; } mysql_free_result($結果セット); mysql_close($接続); return $氏名; ★サーバ、ユーザ、パスワードは 然るべき内容を設定してください。 ※サンプルはインデントに漢字空白を 使っています。コピペするとエラーに なります。

suhixinkusu
質問者

お礼

$sql = "select name from BBB where id=1"; $結果セット = mysql_quer($sql,$接続); if ( !結果セット ) {   //クエリが失敗した時の処理   print(mysql_error($接続));   mysql_close($接続);   return ""; } いろいろと省きましたが 一応この通りにかけていますが、 上記の部分でFALSEが返ってきます。 mysqlそのものにsql文を実行すると 欲しい値が表示されています。 何故でしょうか?

  • hwoa1024
  • ベストアンサー率36% (122/336)
回答No.1

DB AAAに接続後、 select name from BBB where id = '1';

suhixinkusu
質問者

お礼

$a = mysql_query("select name from BBB where id = '1'"); やってみましたが、booleanで0が $aに入りました。 $aにtanakaを入れるにはどうしたら いいでしょうか?

関連するQ&A

専門家に質問してみよう