
お世話になります。
PHPでMySQLのデータを検索したいと思い、
以下のようにしてみたのですがうまく表示されません。
--
$name = $_POST["name"];
$link = mysql_connect('localhost', '', '');
$db_selected = mysql_select_db('', $link);
mysql_set_charset('utf8');
$sql = "SELECT * FROM search WHERE". $name;
$result = mysql_query($sql);
while($row = mysql_fetch_array($name)) {
print $row['name'];
}
$close_flag = mysql_close($link);
--
どう改善すればいいのでしょうか?
初心者の為、少々お見苦しい点があるかと思いますが
どうぞよろしくお願いします。
No.2ベストアンサー
- 回答日時:
まずはSQL文が書けるようになっていないと(phpで云々といっても)意味がありません。
http://dev.mysql.com/doc/refman/5.1/ja/select.html
また投稿されたデータをSQL文に引き渡すなら、必ずエスケープしてください。
$sql = sprintf("SELECT * FROM search WHERE name='%s'", mysql_real_escape_string($name));
実行結果が「失敗」していないか確認する習慣を。
$result = mysql_query($sql);
if ($result === false) { エラー処理; }
もしくは
$result = mysql_query($sql) or die('sql error');
(蛇足)
ネイティブなMySQL関数はすでに非推奨です。MySQLiもしくはPDOで書き直すことをお勧めします。プリペアドステートメント+プレースホルダが使えますのでエスケープ忘れもありません。
No.1
- 回答日時:
$sql = "SELECT * FROM search WHERE". $name;
まず、ここを直しましょう。
$nameには何が入っていますか?
検索するためのキーワードが入ってるのではないですか?
それを search テーブルのどのカラムと比較したいのですか?
比較したいカラムの名前がわかったら
$sql = "SELECT * FROM search WHERE カラム名 = '". $name . "'";
といった感じに直してみましょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
phpのheader("Location:#pos")...
-
フォームで戻った際に入力済み...
-
SplFileObject を利用したとき...
-
PHP8を使うと、大量のWarningが...
-
セッション関数を使わずにファ...
-
composerをインストールしたい...
-
php 完了画面の送信メールのコ...
-
csvファイルについて教えて下さ...
-
PHPの変わった閉じタグの必要性...
-
PHP8でWarning:Undefined varia...
-
phpの問い合わせフォームを作っ...
-
marginの値でマイナス値を設定...
-
submitで思うようにページが遷...
-
HTML PHP ラジオボタンのイベント
-
php でqiitaのサイトにあったフ...
-
PHPの勉強してます。 配列のと...
-
BASIC認証のフォームをデザイン...
-
アップロードファイルを表示す...
-
複数のパソコンの中の1つのパソ...
-
返信機能のツリー構造の深さを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
sqlから多次元配列に要素を格納...
-
phpのエラーについてです
-
DB(MySQL)から複数行のデータを...
-
リストから詳細画面に遷移する...
-
Resource id #3 をフィールドの...
-
テーブルに入っているデータと...
-
stringaddslashes 半角¥が消える
-
PHP+mysqlでSQL文に文字数制限...
-
会員登録したらメールが送られ...
-
検索表示について
-
XAMPPで画面が真っ白になります。
-
ボタンのonclick時における関数...
-
mysql_queryが動かなくて困って...
-
PHP+MYSQL IF文の初歩
-
PHP+MySQLでの検索結果の横並び...
-
"と'の使い方を教えていただけ...
-
mysql_queryでDB検索をしたいが...
-
C++でMySQLを処理したいです
-
縦に長い<table>でなく横に長い...
-
mariadbでのエラー
おすすめ情報