Home > 梅原 > PHP 『 超 』 初心者勉強会(PHPでMySQL) 7回目に参加して来ました。

PHP 『 超 』 初心者勉強会(PHPでMySQL) 7回目に参加して来ました。

20100728
Category:梅原 /Tags:,

7回目。今回はUPDATEでテーブルの書き換え。

title_update_form.phpへのアクセス時にGETでフォームに初期値を与えて、ユーザーは必要な所を書き換えてsubmitを押すと、POSTでtitle_update_commit.phpに値を送る。title_update_commit.phpはSQL文を送信し、書き換える。

title_update_form.php

<?php

//	headerの出力
header("Content-type: text/html; charset=utf-8");

//	MySQLに接続する
$con = mysql_connect( 'localhost', 'sample', '123456' );

//	データベースの選択
mysql_select_db( 'sample', $con );

//	文字コードの設定
mysql_query( 'SET NAMES utf8' ); // Shift JIS = sjis, EUC JP = ujis

//GETの取得
$title_id = $_GET['title_id'];
$title_id = mysql_real_escape_string($title_id);

//	SQLの送信
$res = mysql_query( " SELECT * FROM t_title WHERE title_id =$title_id ", $con );

//	レコードを取得
$record = mysql_fetch_assoc($res);
var_dump($record);

//	エラーを出力
echo mysql_error($con);

?>
<html>
<head>
	<title></title>
</head>
<body>
<h1>タイトルの変更フォーム</h1>

<form method="post" action="title_update_commit.php">

	<input type="_hidden" name="title_id" value="<?php echo $record['title_id'] ?>" />
	<input type="name"   name="title"    value="<?php echo $record['title'] ?>" />
	<input type="submit" name="" value="変更" />

</form>

</body>
</html>

title_update_commit.php

<?php

//	headerの出力
header("Content-type: text/html; charset=utf-8");

//	MySQLに接続する
$con = mysql_connect( 'localhost', 'sample', '123456' );

//	データベースの選択
mysql_select_db( 'sample', $con );

//	文字コードの設定
mysql_query( 'SET NAMES utf8' ); // Shift JIS = sjis, EUC JP = ujis

//POSTの取得
$title_id = $_POST['title_id'];
$title = $_POST['title'];
$title_id = mysql_real_escape_string($title_id);
$title = mysql_real_escape_string($title);

//	SQLの送信
$res = mysql_query( "UPDATE t_title SET title='$title' WHERE title_id=$title_id ", $con );
//mySQLでは内容が同じ文字列でUPDATEしても、update_timeは更新されない。

//	エラーを出力
echo mysql_error($con);

exit;

$val = mysql_real_escape_string($val);
$res = mysql_query($sql, $con);
$err = mysql_errno($con);
$str = mysql_error($con);
$row = mysql_num_rows($res);
$row = mysql_affected_rows($con);
$id  = mysql_insert_id($con);

関連記事:

Comments are closed.