SQLの窓 イラストAC フリー素材

2013年06月15日

実用的かどうかは置いておいて、修正画面のデータの初期表示について

関連する記事

実用的かどうかは置いておいて、2ページ画面遷移の更新アプリの雛形について


データフィールドには、check.php からのリダイレクト用に $_GET を埋め込んであります。ここでは、name(アカウント) が主キーになるので、その値で DB を読み込んで、結果を $_GET にセットしています。
<?php
header( "Content-Type: text/html; Charset=utf-8" );
header( "pragma: no-cache" );
header( "Expires: Wed, 31 May 2000 14:59:58 GMT" );
header( "Cache-control: no-cache" );

db_action();

function db_action() {

	if ( trim( $_GET['name'] ) == "" ) {
		$_GET['err'] = "名前が指定されていません";
		return;
	}

	$connect = mysql_connect( "localhost", "root", "password" );
	if ( $connect === FALSE ) {
		$_GET['err'] = "データベースの接続に失敗しました";
		return;
	}
	mysql_set_charset('utf8');

	mysql_select_db( "lightbox", $connect );

	// $_GET['name'] は安全であるという前提
	$query = "select * from transition where name = '{$_GET['name']}'";
	$rows = mysql_query( $query, $connect );
	if ( $rows === FALSE ) {
		$_GET['err'] = "データベースに正しくアクセスではませんでした";
		return;
	}
	$row = mysql_fetch_array( $rows );
	if ( $row === FALSE ) {
		$_GET['err'] = "対象データが存在しませんでした";
		return;
	}

	$_GET['comment'] = $row['comment'];
	
	mysql_close( $connect );

}

?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script>

function check() {

	var pass = document.getElementById("pass").value;
	var text = document.getElementById("comment").value;

	if ( pass.trim() == "" ) {
		alert("パスワードが未入力です");
		document.getElementById("pass").focus();
		return false;
	}
	if ( text.length < 20 ) {
		alert("20文字以上の入力をお願いします");
		document.getElementById("comment").focus();
		document.getElementById("comment").select();
		return false;
	}

}
</script>
</head>
<body>
<span style="color:#ff0000;font-weight:bold;"><?= $_GET['err'] ?></span>
<form action="check.php" method="post" onsubmit="return check();"> 
	名前 <br>
	<input
		type="text"
		id="name"
		name="name"
		readonly
		style="background-color:#c0c0c0;"
		value="<?= $_GET['name'] ?>"><br> 

	備考 <br>
	<textarea
		id="comment"
		name="comment"
		style="width:400px;height:100px;"
		><?= $_GET['comment'] ?></textarea><br>

	パスワード<br>
	<input
		type="password"
		id="pass"
		name="pass"><br>

<br>
<hr>

	<input type="submit" name="submit" value="送信"> 
</form>
</body>
</html>




【PHPの最新記事】
posted by at 2013-06-15 18:44 | PHP | このブログの読者になる | 更新情報をチェックする