<?php if(!defined('APP')) die('error!'); ?>
<html>
    <head>
        <meta charset="UTF-8">
        <title>欢迎注册</title>    </head>
    <body>
    <div class="box">
<h1>欢迎注册新用户</h1>
<form method="post" enctype="multipart/form-data">
<table class="profile-table">
            <tr><th>选择用户头像:</th><td><input name="pic" type="file" /></td></tr>
            <tr><th>用户名:</th><td><input type="text" name="username" /></td></tr>
            <tr><th>密码:</th><td><input type="text" name="password" id="pw1"/></td></tr>
            <tr><th>确认密码:</th><td><input type="text" id="pw2"/></td></tr>
<tr><th>性别:</th><td>
<input type="radio" name="gender" value="男" id="male" />男
<input type="radio" name="gender" value="女" id="female" />女
</td></tr>
<tr><th>邮箱:</th><td><input type="text" name="email" /></td></tr>
<tr><th>QQ号:</th><td><input type="text" name="qq" /></td></tr>
<tr><th>个人主页:</th><td><input type="text" name="url"/></td></tr>
<tr><th>所在城市:</th><td>
<select name="city">
<option value="未选择">未选择</option>
<option value="广州">广州</option>
                                <option value="深圳">深圳</option>
                                <option value="东莞">东莞</option>
                                <option value="其他">其他</option>
</select>
</td></tr>
<tr><th>语言技能:</th><td>
                        <input type="checkbox" name="skill" value="HTML" />HTML
                        <input type="checkbox" name="skill" value="JavaScript" />JavaScript
                        <input type="checkbox" name="skill" value="PHP" />PHP
                        <input type="checkbox" name="skill" value="C++" />C++
</td></tr>
<tr><th class="txttop">自我介绍:</th><td><textarea class="description" name="description"></textarea></td></tr>
<tr><td colspan="2" class="td-btn">
<input type="submit" value="提交注册" class="button" />
                <input type="button" value="返回登录" class="button" onclick="location.href='login.php'"  />
</td></tr>
</table>
</form>
    </div>
<?php if(!empty($error)): ?>
    <div class="error-box">注册失败,错误信息如下:
<ul><?php foreach($error as $v) echo "<li>$v</li>"; ?></ul>
    </div>
<?php endIf; ?>
    </body>
</html>
<?php//设定字符集
header('Content-Type:text/html;charset=utf-8');$error = array(); //保存错误信息//封装函数:载入HTML模板文件
function showRegPage(){ $error = $GLOBALS['error'];//从全局变量读取错误信息

define('APP','emp');
require 'zhuce_html.php'; die;  //终止程序继续执行
}//没有表单提交时,显示注册页面
if(empty($_POST)){
showRegPage();
}//执行到此处说明有表单提交//判断表单中各字段是否都已填写
$check_fields = array('username','password','gender','email','qq','url','city','skill','description');
foreach($check_fields as $v){
if(empty($_POST[$v])){
$error[] = '错误:'.$v.'字段不能为空!';
}
}
if(!empty($error)){
showRegPage();  //显示错误信息并停止程序
}//连接数据库,设置字符集,选择数据库
mysql_connect('localhost','root','123456') or die('数据库连接失败!');
mysql_query('set names utf8');
mysql_query('use `emp`') or die('数据库不存在!');
    //接收需要处理的表单字段
    $username=trim($_POST['username']);
    $password = $_POST['password'];
    $gender=$_POST['gender'];
    $email=trim($_POST['email']);
    $qq=trim($_POST['qq']);
    $url=trim($_POST['url']);
    $city=$_POST['city'];
    $skill=$_POST['skill'];
    $description=$_POST['description'];
      //SQL转义
    $username = mysql_real_escape_string($username);
    $email = mysql_real_escape_string($email);
    $gender = mysql_real_escape_string($gender);
    $qq = mysql_real_escape_string($qq);
    $url = mysql_real_escape_string($url);
    $city = mysql_real_escape_string($city);
    $skill = mysql_real_escape_string($skill);
    $description = mysql_real_escape_string($description);
        
        //判断用户名是否存在
        $sql = "select `id` from `user_info` where `username`='$username'";
        $rst = mysql_query($sql);
        if(mysql_fetch_row($rst)){
                $error[] = '用户名已经存在,请换个用户名。';
                showRegPage();  //显示错误信息并停止程序
        }
        $password = md5($password);
        
        $sql  = "insert into `user_info` (`username`,`password`,`gender`,`email`,`qq`,`url`,`city`,`skill`,`description`) values ('$username','$password','$gender','$email','$qq','$url','$city','$skill','$description')"; $rst = mysql_query($sql);
                if($rst){                //用户注册成功,自动登录
                session_start();                //获取新注册用户的ID
                $id = mysql_insert_id();                $_SESSION['user'] = array(
                        'id' => $id, //将用户id保存到SESSION
                        'username' => $username //将用户名保存到SESSION
                );                //注册成功,自动跳转到会员中心
                echo '<script>alert("注册成功!");window.location.href="user.php"; </script>';
                die;
        }else{
                $error[] = '注册失败,数据库操作失败。';
                showRegPage();  //显示错误信息并停止程序
        }
 ?>