//定数の宣言
$arrPref = array( "お選びください", "北海道", "青森県", "岩手県", "宮城県", "秋田県", "山形県", "福島県", "茨城県", "栃木県", "群馬県", "埼玉県", "千葉県", "東京都", "神奈川県", "新潟県", "富山県", "石川県", "福井県", "山梨県", "長野県", "岐阜県", "静岡県", "愛知県", "三重県", "滋賀県", "京都府", "大阪府", "兵庫県", "奈良県", "和歌山県", "鳥取県", "島根県", "岡山県", "広島県", "山口県", "徳島県", "香川県", "愛媛県", "高知県", "福岡県", "佐賀県", "長崎県", "熊本県", "大分県", "宮崎県", "鹿児島県", "沖縄県" );
$arrDept = array( "お選びください","家政学部","文芸学部","国際学部","看護学部","生活科学科","文科");
$arrGrade = array( "お選びください","1年生","2年生","3年生","既卒");
define( "_CHK_HAN_", 1 );
define( "_CHK_NUM_", 2 );
define( "_CHK_TEL_", 3 );
define( "_CHK_ZEN_", 4 );
define( "_CHK_MAIL_", 5 );
define( "_CHK_RADIO_", 6 );
define( "_CHK_SEL_", 7 );
define( "_CHK_FLOAT_", 8 );
define( "_CHK_ID_", 9 );
define( "_CHK_KANA_", 10 );
//エラーチェック関数
function chk_input( $input, $title, $rule = 0, $min = 0, $max = 0, $fix = 0, $arrNg = false ) {
if ( $rule == _CHK_RADIO_ ) {
if ( strlen( $input ) <= 0 ) {
return "{$title}をチェックしてください。
";
}
return "";
}
if ( $rule == _CHK_SEL_ ) {
if ( strlen( $input ) <= 0 ) {
return "{$title}を選択してください。
";
}
return "";
}
if ( $min > 0 ) {
if ( strlen( $input ) <= 0 ) {
return "{$title}を入力してください。
";
}
}
if ( $rule == _CHK_MAIL_ ) {
if ( strlen( $input ) != mb_strlen( $input ) ) {
return "{$title}は半角で入力してください。
";
}
if ( strlen( $input ) > 100 ) {
return "{$title}は100字以内で入力してください。
";
}
if ( ( $pos = strpos( $input, "@" ) ) <= 0 ) {
return "{$title}が不正です。
";
}
if ( strpos( $input, "@", $pos + 1 ) > 0 ) {
return "{$title}が不正です。
";
}
if ( strpos( $input, ".", $pos ) <= 0 ) {
return "{$title}が不正です。
";
}
return "";
}
if ( $rule == _CHK_ZEN_ ) {
$num = mb_strlen( $input );
if ( $num != mb_strlen( $input ) ) {
return "{$title}は全角で入力してください。
";
}
} else if ( $rule != 0 ) {
$num = strlen( $input );
if ( $num != mb_strlen( $input ) ) {
return "{$title}は半角で入力してください。
";
}
$id_chk = 0;
if ( $rule == _CHK_NUM_ || $rule == _CHK_TEL_ || $rule == _CHK_FLOAT_ || $rule == _CHK_ID_ || $rule == _CHK_ID2_ || $rule == _CHK_CODE_ ) {
for ( $iCnt = 0 ; $iCnt < $num ; $iCnt++ ) {
$char = ord( substr( $input, $iCnt, 1 ) );
if ( $char < 48 || $char > 57 ) {
if ( $rule == _CHK_ID_ ) {
if ( ( ! ( $char >= 97 && $char <= 122 ) ) && ( ! ( $char >= 60 && $char <= 90 ) ) ) {
return "{$title}は半角英数字のみで入力してください。
";
} else {
$id_chk++;
}
} else if ( $rule == _CHK_ID2_ ) {
if ( ( ! ( $char >= 97 && $char <= 122 ) ) && ( ! ( $char >= 60 && $char <= 90 ) ) && $char != 44 ) {
return "{$title}は半角英数字とカンマ(,)のみで入力してください。
";
} else {
$id_chk++;
}
} else if ( $rule == _CHK_CODE_ ) {
if ( ( ! ( $char >= 97 && $char <= 122 ) ) && ( ! ( $char >= 60 && $char <= 90 ) ) && $char != 45 && $char != 95 && $char != 42 && $char != 43 && $char != 47 ) {
return "{$title}は半角英数字とハイフン(-)とアンダースコア(_)、プラス(+)、スラッシュ(/)のみで入力してください。
";
} else {
$id_chk++;
}
} else if ( $rule == _CHK_NUM_ ) {
return "{$title}は半角数字のみで入力してください。
";
} else if ( $rule == _CHK_TEL_ && $char != 45 ) {
return "{$title}は半角数字とハイフン「-」のみで入力してください。
";
} else if ( $rule == _CHK_FLOAT_ && $char != 46 ) {
return "{$title}は半角数字と「.」のみで入力してください。
";
}
}
}
}
}
$num = mb_strlen( $input );
if ( $fix > 0 && $num != $fix ) {
return "{$title}は{$fix}字で入力してください。
";
}
if ( $max > 0 && $num > $max ) {
if ( $min > 1 ) {
return "{$title}は{$min}字以上{$max}字以内で入力してください。
";
} else {
return "{$title}は{$max}字以内で入力してください。
";
}
}
if ( $min > 1 && $num < $min ) {
if ( $max > 0 ) {
return "{$title}は{$min}字以上{$max}字以内で入力してください。
";
} else {
return "{$title}は{$min}字以上で入力してください。
";
}
}
if ( $arrNg != false ) {
$ng = "";
for ( $iCnt = 0 ; $iCnt < count( $arrNg ) ; $iCnt++ ) {
if ( strpos( " " . make_key( $input ), $arrNg[$iCnt]["ng_word"] ) > 0 ) {
$ng = $arrNg[$iCnt]["ng_word"];
break;
}
}
if ( strlen( $ng ) > 0 ) {
return "{$title}にNGワード({$ng})が含まれています。
";
}
}
return "";
}
//値の取得
if ( $_POST["ACT"] == "ON" || $_POST["ACT"] == "BACK" ) {
$name = $_POST["name"];//参加者氏名
$namek = $_POST["namek"];//氏名カナ
$sc_name = $_POST["sc-name"];//在籍校名
$grade = $_POST["grade"];//学年
$dept = $_POST["dept"];//希望学部・学科
$tel = $_POST["tel"];//電話番号
$mail = $_POST["mail"];//メールアドレス
$mail2 = $_POST["mail2"];//確認用メールアドレス
$note = $_POST["note"];
//エラーチェック
$strErr = "";
$strErr .= chk_input( $name, "氏名", 0, 1 );
$strErr .= chk_input( $namek, "氏名カナ", 0, 1 );
/*
$strErr .= chk_input( $sc_name, "学校名", 0, 1 );
if ( $grade == 0 ) {
$strErr .= "学年を選択してください。
";
}
*/
//希望日!!チェック
$strErr .= chk_input( $tel, "電話番号", _CHK_TEL_, 1 );
$strErr .= chk_input( $mail, "メールアドレス", _CHK_MAIL_, 1 );
if ( $mail != $mail2 ) {
$strErr .= "確認メールアドレスと一致しません。
";
}
} else {
$name = "";
$namek = "";
$sc_name = "";
$grade = "";
$dept = "";
$tel = "";
$mail = "";
$mail2 = "";
$note = "";
}
//アクション振り分け【入力画面(0)・入力+エラー画面(0)・確認画面(1)】
$cnf = 0;
if ( $_POST["ACT"] == "ON" && $strErr == "" ) {
$cnf = 1;
}
if ( $cnf == 1 ) {
$BTN = "送信";
} else {
$BTN = "内容を確認する";
}
?>
共立女子大学・短期大学