join
implode
修改代码
$fav = $_POST['fav'];
if (!empty($fav)) {
$favStr = join(',', $fav);
}
$password = md5($password);
$userInfo = <<<EOF
<table border="1" cellpadding="0" cellspacing="0" width="70%">
<tr>
<td>用户名</td>
<td>密码</td>
<td>邮箱</td>
<td>兴趣爱好</td>
</tr>
<tr>
<td>{$username}</td>
<td>{$password}</td>
<td>{$email}</td>
<td>{$favStr}</td>
</tr>
</table>
EOF;
echo $userInfo;
reg.php
<?php
$string = "ABCDEFGHIJKLMNOPQRSJUVWXYZ1234567890";
$code = "";
for ($i = 1; $i <= 4; $i++) {
$code .= '<span style="color:rgb(' . mt_rand(0, 255) . ',' . mt_rand(0, 255) . ',' . mt_rand(0, 255) . ')">' . $string{mt_rand(0, strlen($string) - 1)} . '</span>';
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>注册页面</title>
</head>
<body>
<h1>慕课网注册页面</h1>
<form method="post" action="doAction.php">
<table border="1" cellspacing="0" cellpadding="0" width="80%" bgcolor="#ABCDEF">
<tr>
<td align="right">用户名</td>
<td><input type="username" name="username" id="" placeholder="请输入合法用户名...">用户名首字母以字母开始,并且长度6~10</td>
</tr>
<tr>
<td align="right">密码</td>
<td><input type="password" name="password" placeholder="请密码...">密码不能为空,长度6~10</td>
</tr>
<tr>
<td align="right">确认密码</td>
<td><input type="password" name="password1" id="" placeholder="请输入确认密码...">两次密码一致</td>
</tr>
<tr>
<td align="right">邮箱</td>
<td><input type="text" name="email" id="" placeholder="请输入合法邮箱">邮箱必须包含@,382771946@qq.com</td>
</tr>
<tr>
<td align="right">兴趣爱好</td>
<td>
<input type="checkbox" name="fav[]" id="" value="php">PHP
<input type="checkbox" name="fav[]" id="" value="java">Java
<input type="checkbox" name="fav[]" id="" value="ios">Ios
<input type="checkbox" name="fav[]" id="" value="c">C语言
<input type="checkbox" name="fav[]" id="" value="c++">C++
<input type="checkbox" name="fav[]" id="" value="swift">Swift
<input type="checkbox" name="fav[]" id="" value="meteor">Meteor
<input type="checkbox" name="fav[]" id="" value="nodejs">NodeJS
<input type="checkbox" name="fav[]" id="" value="ionic">Iconic
</td>
</tr>
<tr>
<td align="right">验证码</td>
<td>
<input type="text" name="verify"><?php echo $code ?>
<input type="hidden" name="verify1" value='<?php echo strip_tags($code) ?>'></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="注册"></td>
</tr>
</table>
</form>
</body>
</html>
doAction.php
<?php
header("content-type:text/html;charset=utf-8");
$username = $_POST['username'];
$password = $_POST['password'];
$password1 = $_POST['password1'];
$email = $_POST['email'];
$fav = $_POST['fav'];
if (!empty($fav)) {
$favStr = join(',', $fav);
}
$verify = trim(strtolower($_POST['verify']));
$verify1 = trim(strtolower($_POST['verify1']));
$redirectUrl = '<a href="reg.php" > 重新注册</a > ';
//$char = $username{0};
$char = substr($username, 0, 1);
$ascii = ord($char);
if (!(($ascii >= 65 && $ascii <= 90) || ($ascii >= 97 && $ascii <= 122))) {
exit('用户名首字母不是以字母开始' . $redirectUrl);
}
$userLen = strlen($username);
if ($userLen < 6 || $userLen > 10) {
exit('用户名长度不符合规范 <br/>' . $redirectUrl);
}
$pwdLen = strlen($password);
if ($pwdLen == 0) {
exit('密码不能为空<br/>' . $redirectUrl);
}
if ($pwdLen < 6 || $pwdLen > 10) {
die("密码长度不符合规范" . $redirectUrl);
}
//if ($password !== $password1) {
// exit("两次密码不一致<br/>" . $redirectUrl);
//}
if (strcmp($password, $password1) !== 0) {
exit("两次密码不一致<br/>" . $redirectUrl);
}
//位置0也是false
if (strpos($email, '@') == false) {
exit("非法邮箱<br/>" . $redirectUrl);
}
if ($verify1 !== $verify) {
exit("验证码错误<br/>" . $redirectUrl);
}
echo "恭喜您注册成功<br/>";
$password = md5($password);
$userInfo = <<<EOF
<table border="1" cellpadding="0" cellspacing="0" width="70%">
<tr>
<td>用户名</td>
<td>密码</td>
<td>邮箱</td>
<td>兴趣爱好</td>
</tr>
<tr>
<td>{$username}</td>
<td>{$password}</td>
<td>{$email}</td>
<td>{$favStr}</td>
</tr>
</table>
EOF;
echo $userInfo;
?>