雛形基本部分

  control.php



  
<?
# **********************************************************
# 外部ファイル
# **********************************************************
require_once( "common.php" );
require_once( "db.php" );
require_once( "model.php" );

# **********************************************************
# 定数定義
# **********************************************************
define( 'PASS_飾り', 1 );
define( 'PASS_KEY入力', 2 );
define( 'PASS_明細入力', 3 );

define( 'VIEW_飾り', 'viewmessage.php' );
define( 'VIEW_KEY入力', 'view.php' );
define( 'VIEW_明細入力', 'view2.php' );

$SQL = new DB( "localhost", "lightbox", "root" );

# **********************************************************
# 処理コントロール
# **********************************************************
switch ( $_SERVER['REQUEST_METHOD'] ) {
	case 'GET':
		break;
	case 'POST':
		switch( $_POST['GNO'] ) {
			case PASS_KEY入力:
				if ( !CheckDataHead() ) {
					$_POST['GNO'] = PASS_飾り;
					break;
				}
				break;

			case PASS_明細入力:
				if ( !CheckDataBody() ) {
					break;
				}
				break;
		}
		break;
}

# **********************************************************
# ビュー
# **********************************************************
CreateInData( );
switch( $_POST['GNO'] ) {
	case PASS_飾り:
		require_once( VIEW_飾り );
		break;

	case PASS_KEY入力:
		EditDataBody();
		require_once( VIEW_明細入力 );
		break;

	case PASS_明細入力:
		EditDataBody();
		require_once( VIEW_明細入力 );
		break;

	default:
		if ( $_GET['view'] == 'head' ) {
			require_once( VIEW_KEY入力 );
		}
		if ( $_GET['view'] == 'body' ) {
			require_once( VIEW_飾り );
		}
		break;

}

$SQL->Close();

# **********************************************************
# デバッグ
# **********************************************************
DispData();
?>
  



  model.php



  
<?
# **********************************************************
# エラーチェック
# **********************************************************
function CheckDataHead( ) {

	global $ErrMessage;

	if ( trim( $_POST['In1Email'] ) == "" ) {
		$ErrMessage = "メールアドレスは必須入力です";
		return FALSE;
	}

	return TRUE;
}

# **********************************************************
# エラーチェック
# **********************************************************
function CheckDataBody( ) {

	global $ErrMessage;

	if ( trim( $_POST['In2Name'] ) == "" ) {
		$ErrMessage = "氏名は必須入力です";
		return FALSE;
	}
	if ( strlen( $_POST['In2Tel'] ) > 14 ) {
		$ErrMessage = "入力された電話番号のデータ長が制限を超えています";
		return FALSE;
	}
	if ( !checkdate( $_POST['In2Mm'], $_POST['In2Dd'], $_POST['In2Yyyy'] ) ) {
		$ErrMessage = "誕生日に誤りがあります";
		return FALSE;
	}

	return TRUE;
}

# **********************************************************
# 明細画面の編集
# **********************************************************
function EditDataBody( ) {

	global $Yyyy,$Mm,$Dd;

	$Yyyy = "";
	for( $i = 1950; $i <= 2004; $i++ ) {
		$Work = "";
		if ( $_POST['In2Yyyy'] == $i ) {
			$Work = "selected";
		}
		$Yyyy .= "<OPTION value=\"$i\" $Work>$i\n";
	}
	$Mm = "";
	for( $i = 1; $i <= 12; $i++ ) {
		$Work = "";
		if ( $_POST['In2Mm'] == $i ) {
			$Work = "selected";
		}
		$Mm .= "<OPTION value=\"$i\" $Work>$i\n";
	}
	$Dd = "";
	for( $i = 1; $i <= 31; $i++ ) {
		$Work = "";
		if ( $_POST['In2Dd'] == $i ) {
			$Work = "selected";
		}
		$Dd .= "<OPTION value=\"$i\" $Work>$i\n";
	}

}

# **********************************************************
# 引継ぎ用埋め込みデータの作成
# **********************************************************
function CreateInData( ) {

	global $InData;

	$InData = "";

	foreach( $_POST as $Key => $Value ) {
		if ( substr( $Key, 0, 2 ) == "In" ) {
			if ( substr( $Key, 0, 3 ) != "In2" ) {
				$InData .= "<INPUT type=hidden name=$Key ";
				$InData .= "value=\"$Value\">\n";
			}
		}

	}

}
?>
  



  view.php ( KEY 入力部分 )

  
<SCRIPT language=JavaScript>

// *********************************************************
// フォームのチェック
// *********************************************************
function CheckData() {

	return true;
}

</SCRIPT>

<HTML>
<HEAD>
	<META http-equiv="Content-type" content="text/html; charset=Shift_JIS">
	<TITLE>PHP 雛形</TITLE>
<STYLE>
	.MyCell {
		background-color:silver
	}
</STYLE>
</HEAD>
<BODY>

<FORM
	method=POST
	action=control.php
	target=BodyFrame
	onSubmit='return CheckData()'
>
<INPUT type=hidden name=GNO value="<?= PASS_KEY入力 ?>">

	<TABLE border=0 bgcolor=black cellspacing=1 cellpadding=5>
	<TR>
		<TD class=MyCell>メールアドレス</TD>
		<TD class=MyCell>
			<INPUT
				type=text
				name=In1Email
				value="<?= $_POST['In1Email'] ?>"
			>
		</TD>
		<TD class=MyCell>
			<INPUT type=submit name=send value="送信">
		</TD>
		<TD class=MyCell>
			<INPUT 
				type=button
				value="Cancel"
				onClick='top.location="framemtn.htm"'
			>
		</TD>
	</TR>
	</TABLE>

</FORM>

</BODY>
</HTML>
  



  view2.php ( 明細画面 )

  
<SCRIPT language=JavaScript>

// *********************************************************
// フォームのチェック
// *********************************************************
function CheckData() {

	return true;
}

</SCRIPT>

<HTML>
<HEAD>
	<META http-equiv="Content-type" content="text/html; charset=Shift_JIS">
	<TITLE>PHP 雛形</TITLE>
<STYLE>
	.MyCell {
		background-color:silver
	}
</STYLE>
</HEAD>
<BODY>
<?= $ErrMessage ?>

<FORM method=POST action=control.php onSubmit='return CheckData()'>

<INPUT type=hidden name=GNO value="<?= PASS_明細入力 ?>">
<INPUT type=submit name=send value="更新">
<INPUT type=reset value="リセット">
<br><br>

<TABLE border=0 bgcolor=black cellspacing=1 cellpadding=5>
<TR>
	<TD class=MyCell>氏名</TD>
	<TD class=MyCell>
		<INPUT type=text name=In2Name value="<?= $_POST['In2Name'] ?>">
	</TD>
</TR>
<TR>
	<TD class=MyCell>郵便番号</TD>
	<TD class=MyCell>
		<INPUT type=text name=In2Zip value="<?= $_POST['In2Zip'] ?>">
	</TD>
</TR>
<TR>
	<TD class=MyCell>住所</TD>
	<TD class=MyCell>
		<INPUT
			type=text
			name=In2Address
			value="<?= $_POST['In2Address'] ?>"
			style='width:250'
		>
	</TD>
</TR>
<TR>
	<TD class=MyCell>性別</TD>
	<TD class=MyCell>
		男性
		<INPUT
			type=radio
			name=In2Sex
			value="0"
			<?= $_POST['In2Sex'] != "1" ? "checked" : "" ?>
		>
		女性
		<INPUT 
			type=radio
			name=In2Sex
			value="1"
			<?= $_POST['In2Sex'] == "1" ? "checked" : "" ?>
		>
	</TD>
</TR>
<TR>
	<TD class=MyCell>電話番号</TD>
	<TD class=MyCell>
		<INPUT type=text name=In2Tel value="<?= $_POST['In2Tel'] ?>">
	</TD>
</TR>
<TR>
	<TD class=MyCell>携帯番号</TD>
	<TD class=MyCell>
		<INPUT type=text name=In2Mobile value="<?= $_POST['In2Mobile'] ?>">
	</TD>
</TR>
<TR>
	<TD class=MyCell>誕生日</TD>
	<TD class=MyCell>
		<SELECT name=In2Yyyy><?= $Yyyy ?></SELECT>年
		<SELECT name=In2Mm><?= $Mm ?></SELECT>月
		<SELECT name=In2Dd><?= $Dd ?></SELECT>日
	</TD>
</TR>
<TR>
	<TD class=MyCell>パスワード</TD>
	<TD class=MyCell>
		<INPUT type=text name=In2Pass>
	</TD>
</TR>
</TABLE>

<!-- 入力データ引継ぎ用の埋め込み -->
<?= $InData ?>
</FORM>

</BODY>
</HTML>
  



  viewmessage.php ( エラーメッセージ表示用 )

  
<HTML>
<HEAD>
	<META http-equiv="Content-type" content="text/html; charset=Shift_JIS">
	<TITLE>メッセージ表示専用</TITLE>
<STYLE>
	.MyCell {
		background-color:silver
	}
</STYLE>
</HEAD>
<BODY>
<?= $ErrMessage ?>
</BODY>
</HTML>
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ