function arrayString($str) { // from JSON string to array: if (is_string($str)) { $array = json_decode($str); } else { $array = $str; } // array(), $string = ''; foreach ($array as $n => $v) { if (is_string($v)) { $string .= ' ' . "'" . $n . "' => '" . $v . "',"; } else { $string .= ' ' . "'" . $n . "' => array(" . myLineSpacing(arrayString($v), 2) . " ),"; } } return $string; }
<?php require_once 'phpconf.php'; require_once 'phpfunc.php'; require_once 'phpsecurity.php'; session_cache_expire(0); session_cache_limiter('private_no_expire'); session_start(); if ($_SERVER['REQUEST_METHOD'] != 'POST') { // CSRF対策 setToken(); } else { $_POST = arrayString($_POST); checkToken(); $emailre = '/^(?!(?:(?:\\x22?\\x5C[\\x00-\\x7E]\\x22?)|(?:\\x22?[^\\x5C\\x22]\\x22?)){255,})(?!(?:(?:\\x22?\\x5C[\\x00-\\x7E]\\x22?)|(?:\\x22?[^\\x5C\\x22]\\x22?)){65,}@)(?:(?:[\\x21\\x23-\\x27\\x2A\\x2B\\x2D\\x2F-\\x39\\x3D\\x3F\\x5E-\\x7E]+)|(?:\\x22(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x1F\\x21\\x23-\\x5B\\x5D-\\x7F]|(?:\\x5C[\\x00-\\x7F]))*\\x22))(?:\\.(?:(?:[\\x21\\x23-\\x27\\x2A\\x2B\\x2D\\x2F-\\x39\\x3D\\x3F\\x5E-\\x7E]+)|(?:\\x22(?:[\\x01-\\x08\\x0B\\x0C\\x0E-\\x1F\\x21\\x23-\\x5B\\x5D-\\x7F]|(?:\\x5C[\\x00-\\x7F]))*\\x22)))*@(?:(?:(?!.*[^.]{64,})(?:(?:(?:xn--)?[a-z0-9]+(?:-[a-z0-9]+)*\\.){1,126}){1,}(?:(?:[a-z][a-z0-9]*)|(?:(?:xn--)[a-z0-9]+))(?:-[a-z0-9]+)*)|(?:\\[(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){7})|(?:(?!(?:.*[a-f0-9][:\\]]){7,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?)))|(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){5}:)|(?:(?!(?:.*[a-f0-9]:){5,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3}:)?)))?(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))(?:\\.(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))){3}))\\]))$/iD'; $passre = '/^[0-9a-zA-Z]{6,20}$/'; $birthre = '/\\d{4}\\-\\d{2}\\-\\d{2}/'; $error = []; if (1 > strlen($_POST['name']) || strlen($_POST['name']) > 20) { $error[] = '名前は1文字以上20文字以内'; } if (!preg_match($emailre, $_POST['email'])) { $error[] = '不正なメールアドレス'; } else { if (emailExists($_POST['email']) != 0) { $error[] = 'このメールアドレスは既に登録されています'; } } if (!preg_match($passre, $_POST['password'])) { $error[] = 'パスワードは英数字6文字以上20文字以内'; } else {