下のコードをPDOに変換したいのですがうまくいきません。
<!-- search.html --> <!DOCTYPE html> <html> <head> <title>編集画面</title> <meta charset="UTF-8"> </head> <body> <form name="" method="post" action="002.php"> <table width="500" border="1" cellspacing="1" cellpadding="0"> <tr> <td>名前</td> <td> <input type="text" name="name" size="40" maxlength="255"> </td> </tr> <tr> <td>名前カナ</td> <td> <input type="text" name="name_kana" size="40" maxlength="255"> </td> </tr> <tr> <td>年齢</td> <td> <input type="text" name="age" size="40" maxlength="3"> </td> </tr> </table> <input type="submit" name="submit" value="検索"> <input type="reset" value="条件クリア"> </form> </body> </html>
<!-- 002.php --> <!DOCTYPE html> <html> <head> <title>PHP SEARCH RESULT</title> <meta charset="utf8"> </head> <body> <? $debug = false; //DB接続 mysql_connect("localhost","sample",""); mysql_select_db("sample"); if($debug) print_r($HTTP_POST_VARS); //エラーチェック //リクエストメソッドチェック if($REQUEST_METHOD != "POST") { print "Error: invalid method"; exit(); } //クエリ生成 $query = "SELECT * FROM search "; //検索条件生成 //名前 if(!empty($name)) { $name = addslashes($name); $where = "name = '$name' && "; } //名前カナ if(!empty($name_kana)) { $name_kana = addslashes($name_kana); $where .= "name_kana REGEXP '$name_kana' && "; } //年齢 if(!empty($age)) { $age = addslashes($age); $where .= "age = '$age' && "; } if(!empty($where)) { $where = substr($where, 0, -4); $where = "WHERE " . $where; } $query .= $where; if($debug) { print "<BR><BR>"; print $query; } $result = mysql_query($query); $num_rows = mysql_num_rows($result); if($num_rows == 0) $message = "該当するデータはありませんでした"; else $message = $num_rows . "件ヒットしました"; ?> 検索結果<br> <?=$message?> <table border=1> <tr><td>名前</td><td>名前カナ</td><td>年齢</td></tr> <? while($row = mysql_fetch_assoc($result)): ?> <tr><td><?=$row[name]?></td><td><?=$row[name_kana]?></td><td><?=$row[age]?></td></tr> <? endwhile; ?> </table> <a href="search.html">再検索</a> </body> </html>
回答2件
あなたの回答
tips
プレビュー