MySQLデータベースサーバでクエリを実行する (レコードの書き込み) - PHP
PHPでMySQLデータベースに接続しデータベースにレコードを追加する例を紹介します。
コード例
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
if ($_POST['button_submit'] != ''){
$link = mysql_connect('192.168.0.81', 'root', '####ROOT##PASSWORD');
if (!$link == FALSE) {
$database = mysql_select_db('test');
if ($database==TRUE){
$name = $_POST['textBox_name'];
$price = $_POST['textBox_price'];
$sql="insert into products_sample (name, price) values('{$name}','{$price}')";
$result = mysql_query($sql);
if ($result == TRUE){
}else{
echo('DB inseert Failure!');
}
}
mysql_close($$link);
}
}
?>
<form method="post" action="">
name:<input type="text" name="textBox_name" /><br/>
price:<input type="text" name="textBox_price" /><br/>
<input type="submit" name="button_submit" value="書き込み"/>
</form>
</body>
</html>
解説
if ($_POST['button_submit'] != ''){
にて、POSTの画面遷移かを確認します。
$link = mysql_connect('192.168.0.81', 'root', '####ROOT##PASSWORD');
データベースサーバーへの接続をします。
if (!$link == FALSE) {
$database = mysql_select_db('test');
データベースサーバーへの接続ができたならば、データベースを選択します。
if ($database==TRUE){
$name = $_POST['textBox_name'];
$price = $_POST['textBox_price'];
$sql="insert into products_sample (name, price) values('{$name}','{$price}')";
$result = mysql_query($sql);
if ($result == TRUE){
}else{
echo('DB inseert Failure!');
}
}
データベースの選択が成功したならば、POSTで送信されたテキストボックスの内容を取得します。その後SQL文を作成し、実行します。mysql_query()関数ではinsert,updateなどのSQL文の場合は実行が成功するとTRUEを返すため、戻り値をチェックし正常にレコードが挿入できたかを判定しています。
実行結果
実行直後
テーブルに追加するレコード情報を入力し、書き込みボタンを押します。
データベースのレコードを参照すると正しくレコードが追加されています。(データベースのレコードを参照するプログラムは
こちらの記事のものを利用しています。)
著者
iPentecのプログラマー、最近はAIの積極的な活用にも取り組み中。
とっても恥ずかしがり。