
●質問の主旨
kensaku.htmlから数字(データベースのコード番号)を入力・検索して、
PHPMyAdminにあるデータベースから、特定のレコードを取り出したいのですが、
データベースにあるすべてのデータが返されます。
検索窓に入力した特定のレコードの内容だけを
返すためには、下記のichiran.phpをどのように直せばよいでしょうか?
●プログラムの流れ
1.kensaku.htmlの検索窓に番号を入力・送信
2.PHPMyAdminにあるデータベース(aketo)にアクセス
3.ichiran.phpで検索結果を表示
●プログラムコード
(kensaku.html)
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>PHPの基礎</title>
</head>
<body>
<form method="post" action="kensaku.php">
ご意見コードを入力してください。<br/>
<input name="code" type="text" style="width:100px"><br/>
<br/>
<input type="submit" value="送信"><br/>
</body>
</html>
(ichiran.php)
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>PHPの基礎</title>
</head>
<body>
<?php
$code=$_POST['code'];
$dsn = 'mysql:dbname=phpkiso2;host=localhost';
$user = 'root';
$password = '';
$dbh = new PDO($dsn,$user,$password);
$dbh->query('SET NAMES UTF-8');
$sql = 'SELECT * FROM anketo WHERE code='.$code;
$stmt = $dbh->prepare($sql);
$stmt->execute();
$stmt->execute();
while(1) {
$rec = $stmt->fetch(PDO::FETCH_ASSOC);
if($rec == false) {
break;
}
print$rec['code'];
print$rec['nickname'];
print$rec['email'];
print$rec['goiken'];
print'<br/>';
}
$dbh = null;
?>
</body>
</html>
●開発環境
windows8
xammp1.8.1
MySQL(PHPMyAdmin)

No.1ベストアンサー
- 回答日時:
>$sql = 'SELECT * FROM anketo WHERE code='.$code;
ダイレクトに$codeをクエリに書きこんでしまってはプリペアド処理になってない
何を参考にしているかわからないけど、その参考文献をもう一度よく
読みなおした方がよいと思います
yambejp様
ご回答ありがとうございます。
>プリペアド処理
プリペアードステートメント処理のことですね。
参考文献の先の箇所(P142)を読んでいたら、
出てきました。もう一度じっくり読んでみます。
いきなりはじめるPHP~ワクワク・ドキドキの入門教室
http://www.amazon.co.jp/%E3%81%84%E3%81%8D%E3%81 …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
mysqlがインストールされている...
-
#1062 - '0' は索引 'PRIMARY' ...
-
データベースの接続に失敗して...
-
[XAMPP Control Panel v3.2.4] ...
-
下記の問合せを行うクエリを、P...
-
テーブル名が可変の場合のクエ...
-
テーブル作成時のカラムについて
-
同一日に複数レコードがある場...
-
MAMP 99ドル約1.6万円 高い...
-
あってますか?SQL
-
WHERE `年月日` = '晴' OR `年...
-
SQLです教えてくださいお願いし...
-
SQLを作ったのですがうまくいき...
-
(初心者)MySQLやmaraDBで、crea...
-
SQLです教えてくださいお願いし...
-
SQLです教えてくださいお願いし...
-
SQLです教えてください。
-
SQLです教えてくださいお願いし...
-
SQLです教えてくださいお願いし...
-
SQLです教えてくださいお願いし...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
webアプリケーションリリース後...
-
csvファイルを自動で取り込み(...
-
MySQLのビット演算
-
XAMPPでのMySQL各種設定保存場...
-
PHP+MySQLでのINSERTの処理遅延
-
データベースファイル(.db)を開...
-
PL/SQLで@ファイル名が反応しま...
-
PL/SQLをWindowsのBATファイル...
-
sql*loader 数値のロード
-
あるDBから別のDBのテーブルをs...
-
mysqlにおけるホストのパーセン...
-
同じSQL文で極端に検索が遅くな...
-
utf8bomとutf8mb4の違いがいま...
-
メンテナンスプランについて
-
create databaseがうまくいきま...
-
MySQL4.1系でPHPが文字化けして...
-
SQLServerのselect文でデータ数...
-
【初心者です】SQLPLUSでのバッ...
-
複数行をINSERTで『ORA-00911: ...
-
数字で「そ」と「り」
おすすめ情報