FOR SE

文系の学部から新卒でメーカー系のSIerに就職。技術・スキルがないためブログを通して勉強。その後、IT業界の業界知識が活かせる人材業界に就職

このエントリーをはてなブックマークに追加

【php・mysql・xmlhttprequest】DBへの登録・変更・検索・削除 ~レコードの検索~

【今回の紹介】


前回まででmysqlをインストールし、DBの接続を確認するこ
とまで完了しました。



今後は、DBを使用した以下の基本的な操作を行っていきたいと思います。

・登録
・検索
・変更
・削除


ちなみに今回は、検索処理です。

【処理の流れ】

 ■検索


  1、画面から入力した値を取得

  2、phpに取得した値を渡す

  3、phpにてDBに接続

  4、クエリの実行(取得した値をセット)

  5、結果の出力

  form→php
  ※画面遷移あり。xmlhttprequestで同一ページ内で
  DBの値を取得し、表示できるかは課題。


【参考】

<?php
$mysqli=new mysqli('localhost','sa','qwertyuiop@1','test_db');
if($mysqli->connect_error){echo "DB接続できませーん";}
$stmt=$mysqli->prepare("SET NAMES utf8");
$stmt->execute();
$stmt=$mysqli->prepare("select * from test_table") or exit("error");
$stmt->execute();
$stmt->bind_result($result_id,$result_name);
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<form action="serch_db.php" method="POST" >
<input type="text" id="text_2" name="serch_value">
<input type="submit" id="button_2" value="検索">
</form>
</body>
</html>

処理出力画面

<?php
header('Content-Type: text/html; charset=UTF-8');
$input=$_POST['serch_value'];
$mysqli=new mysqli('localhost','sa','qwertyuiop@1','test_db');
if($mysqli->connect_error){echo "DB接続できませーん";}
$stmt=$mysqli->prepare("SET NAMES utf8");
$stmt->execute();
$stmt=$mysqli->prepare("select * from test_table where name LIKE '%$input%'") or exit("error");
$stmt->execute();
$stmt->bind_result($result_id,$result_name);
?>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<table border=1>
<?php

while($stmt->fetch()){
echo '<tr>';
echo '<td>'.$result_id.'</td>';
echo '<td>'.$result_name.'</td>';
echo '</tr>';
}
?>
</table>
</body>
</html>
.hatena-module:nth-of-type(10) { background: transparent; } .hatena-module:nth-of-type(10) .hatena-module-title{ display: none; } .hatena-module:nth-of-type(10) .hatena-module-body { padding: 0; }