保証人の入力画面を追加

  保証人マスタの定義



  
create table 保証人マスタ ( 
`メールアドレス` VARCHAR(50) not NULL,
`氏名` VARCHAR(20) NULL,
`郵便番号` VARCHAR(8) NULL,
`住所` VARCHAR(50) NULL,
`TEL` VARCHAR(14) NULL,
`続柄` CHAR(1) NULL,
primary key(メールアドレス))
  



  control.php の変更



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

# **********************************************************
# 定数定義
# **********************************************************
define( 'PASS_初期画面', 1 );
define( 'PASS_顧客入力', 2 );
define( 'PASS_確認画面', 3 );
define( 'PASS_保証人入力', 4 );

define( 'JUMP_顧客入力', 1 );
define( 'JUMP_保証人入力', 2 );

define( 'VIEW_顧客入力', 'view.php' );
define( 'VIEW_確認画面', 'view2.php' );
define( 'VIEW_最終画面', 'view3.php' );
define( 'VIEW_保証人入力', 'view4.php' );

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

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

			case PASS_保証人入力:
				if ( !CheckData2() ) {
					$_POST['GNO'] = JUMP_保証人入力;
				}
				break;

			case PASS_確認画面:
				if ( !InsertData( $SQL ) ) {
					$_POST['GNO'] = JUMP_顧客入力;
				}
				break;

		}
		break;
}

# **********************************************************
# ビュー
# **********************************************************
CreateInData( );
switch( $_POST['GNO'] ) {
	case PASS_初期画面:
		EditMain();
		require_once( VIEW_顧客入力 );
		break;

	case PASS_顧客入力:
		require_once( VIEW_保証人入力 );
		break;

	case PASS_保証人入力:
		EditData2();
		require_once( VIEW_確認画面 );
		break;

	case PASS_確認画面:
		require_once( VIEW_最終画面 );
		break;

	default:
		EditMain();
		require_once( VIEW_顧客入力 );
		break;

}

$SQL->Close();

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



  保証人入力画面 ( view4.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>

<H3>保証人入力</H3>
<?= $ErrMessage ?>

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

<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=text name=In2Tel value="<?= $_POST['In2Tel'] ?>">
	</TD>
</TR>
<TR>
	<TD class=MyCell>続柄</TD>
	<TD class=MyCell>
	   <SELECT name=In2Relation>
	   <OPTION value="1" <?= $_POST['In2Relation'] == "1" ? "selected" : "" ?>>父
	   <OPTION value="2" <?= $_POST['In2Relation'] == "2" ? "selected" : "" ?>>母
	   <OPTION value="3" <?= $_POST['In2Relation'] == "3" ? "selected" : "" ?>>兄
	   <OPTION value="4" <?= $_POST['In2Relation'] == "4" ? "selected" : "" ?>>姉
	   <OPTION value="9" <?= $_POST['In2Relation'] == "9" ? "selected" : "" ?>>その他
	   </SELECT>
	</TD>
</TR>
</TABLE>
<br>

	<INPUT type=hidden name=GNO value="<?= PASS_保証人入力 ?>">
	<INPUT type=submit name=send value="送信">
	<INPUT type=button value="Cancel" onClick='location="control.php"'>

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

</BODY>
</HTML>
  



  CheckData2 関数

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

	global $ErrMessage;

	if ( trim( $_POST['In2Name'] ) == "" ) {
		$ErrMessage = "氏名は必須入力です";
		return FALSE;
	}

	return TRUE;
}
  



  更新処理の追加

  
# **********************************************************
# データベースへの更新
# **********************************************************
function InsertData( &$SQL ) {

	global $ErrMessage;

	$Query = "insert into 顧客マスタ";
	$Query .= " values(";
	$Query .= Ss( $_POST['In1Email'] );
	$Query .= "," . Ss( $_POST['In1Name'] );
	$Query .= "," . Ss( $_POST['In1Zip'] );
	$Query .= "," . Ss( $_POST['In1Address'] );
	$Query .= "," . $_POST['In1Sex'];
	$Query .= "," . Ss( $_POST['In1Tel'] );
	$Query .= "," . Ss( $_POST['In1Mobile'] );
	$Query .= "," . Ss( $_POST['In1Pass1'] );
	$Query .= ",";
	$Query .= "'";
	$Query .= $_POST['In1Yyyy'] . "/";
	$Query .= $_POST['In1Mm'] . "/";
	$Query .= $_POST['In1Dd'];
	$Query .= "'";
	$Query .= ")";

	if ( !$SQL->Execute( $Query ) ) {
		$ErrMessage = "登録に失敗しました";
		return FALSE;
	}

	$Query = "insert into 保証人マスタ";
	$Query .= " values(";
	$Query .= Ss( $_POST['In1Email'] );
	$Query .= "," . Ss( $_POST['In2Name'] );
	$Query .= "," . Ss( $_POST['In2Zip'] );
	$Query .= "," . Ss( $_POST['In2Address'] );
	$Query .= "," . Ss( $_POST['In2Tel'] );
	$Query .= "," . Ss( $_POST['In2Relation'] );
	$Query .= ")";

	if ( !$SQL->Execute( $Query ) ) {
		$ErrMessage = "登録に失敗しました";
		return FALSE;
	}

	return TRUE;
}
  



  CreateInData 関数の変更

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

	global $InData;

	$InData = "";

	foreach( $_POST as $Key => $Value ) {
		if ( substr( $Key, 0, 2 ) == "In" ) {
			switch( $_POST['GNO'] ) {
				case JUMP_顧客入力:
					if ( substr( $Key, 0, 3 ) != "In1" ) {
					   $InData .= "<INPUT type=hidden name=$Key ";
					   $InData .= "value=\"$Value\">\n";
					}
					break;

				case JUMP_保証人入力:
					if ( substr( $Key, 0, 3 ) != "In2" ) {
					   $InData .= "<INPUT type=hidden name=$Key ";
					   $InData .= "value=\"$Value\">\n";
					}
					break;

				default:
					$InData .= "<INPUT type=hidden name=$Key ";
					$InData .= "value=\"$Value\">\n";
					break;
			}
		}

	}

}
  



  入力データ引継ぎ用の埋め込みを view.php に追加

  
	<INPUT type=hidden name=GNO value="<?= PASS_顧客入力 ?>">
	<INPUT type=submit name=send value="送信">
	<INPUT type=button value="Cancel" onClick='location="control.php"'>
	<!-- 入力データ引継ぎ用の埋め込み -->
	<?= $InData ?>
</FORM>
  










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





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

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ