人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHP & MySQLでクエリ検索での再質問です。ズバリで100ポイント!
まずは下記を見てください。
http://q.hatena.ne.jp/1176113851

回答1をもとに下記のスクリプトを実行しました。

<?php
$link = mysql_connect('localhost', '●●', '▲▲');
$name = "斉藤";
$pw = "1212";
$rslt = mysql_query("SELECT work FROM member WHERE name='$name' AND pw='$pw'", $link);
if($row = mysql_fetch_array($rslt)){
echo($row['work']);
}
$close_flag = mysql_close($link);
?>

すると下記のエラーが出てしまいます。
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /●●●/■■■.php on line 12

何がいけないのでしょうか?ズバリを期待します!

●質問者: t_yasu
●カテゴリ:ウェブ制作
✍キーワード:echo LINK localhost MySQL name
○ 状態 :終了
└ 回答数 : 2/4件

▽最新の回答へ

1 ● studioes
●10ポイント

$rslt = mysql_query("SELECT work FROM member WHERE name='$name' AND pw='$pw'", $link);

のあとに

mysql_error($link);

を入れてみてください。

文字コードの設定が間違っていてSQL実行時エラーが発生していることが考えられます。

http://q.hatena.ne.jp/

◎質問者からの返答

前の質問で入れていただいていたコメントと上記を入れた場合のエラーです。

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /●●●/■■■.php on line 12


2 ● Mook
●100ポイント
mysql_select_db(db_Name) or die("DB 選択エラー :".db_Name);

が抜けてませんか?

$sql = "SELECT work FROM list WHERE name='$name' AND pw='$pw'"
$rslt = mysql_query( $sql, $link) or die("Query エラー :".$sql);

とやれば、クエリでエラーが起きているのがわかるかと思います。

表示は

if ( $row = mysql_fetch_array( $rslt, MYSQL_ASSOC ) ) {
 echo( $row['work'] );
} else {
 echo( " 見つかりませんでした。" );
}

って感じでしょうか。

mysql_select_db

◎質問者からの返答

Mookさん。有り難うございます。

またまたズバリです。

mysql_select_db(db_Name) or die("DB 選択エラー :".db_Name);で動きました。

上記は書籍等をみて追記したりもしていたのですが、studioes さんがコメントで

記入されていた「×=テーブルはmember」「◎=テーブルはlist」でエラーが出ていたのですね。

今回の質問でデータベース名、テーブル名などをドコに記入するにかがなんとなく理解できました。

有り難うございました。

今回はズバリがでましたので終了とさせていただきます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ