PHP—表单—学生注册

使用了bootstrap,可以进行表单验证。

HTML页面:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>添加学生信息</title>
    <link rel="stylesheet" type="text/css" href="./bootstrap-3.3.7-dist/bootstrap-3.3.7-dist/css/bootstrap.min.css">
    <link  rel="stylesheet" href="./bootstrapvalidator-master/dist/css/bootstrapValidator.min.css">
    <link rel="stylesheet" href="./bootstrap-datetimepicker-master/css/bootstrap-datetimepicker.min.css">
    <script type="text/javascript" src="./bootstrap-3.3.7-dist/bootstrap-3.3.7-dist/js/jquery-3.3.1.min.js"></script>
    <script type="text/javascript" src="./bootstrap-3.3.7-dist/bootstrap-3.3.7-dist/js/bootstrap.min.js"></script>
    <script type="text/javascript" src="./bootstrapvalidator-master/dist/js/bootstrapValidator.min.js"></script>
    <script type="text/javascript" src="./bootstrap-datetimepicker-master/js/bootstrap-datetimepicker.min.js"></script>
    <script type="text/javascript" src="./bootstrap-datetimepicker-master/js/locales/bootstrap-datetimepicker.zh-CN.js"></script>
</head>
<body>
    <div class="container">
        <form class="form-horizontal" name="form1" action="reg.php" method="post">
            <div class="form-group">
                <label for="stuid" class="col-sm-2 control-label">学号*</label>
                <div class="col-sm-10">
                    <input type="text" class="form-control" id="stuid" name="stuid" placeholder="请输入学号">
                </div>
            </div>
            <div class="form-group">
                <label for="name" class="col-sm-2 control-label">姓名*</label>
                <div class="col-sm-10">
                    <input type="text" class="form-control" id="name" name="name" placeholder="请输入姓名">
                </div>
            </div>
            <div class="form-group">
                <label for="sex" class="col-sm-2 control-label">性别*</label>
                <div class="col-sm-10">
                    <label class="radio-inline">
                        <input type="radio" name="sex" id="inlineRadio1" value="男">男
                    </label>
                    <label class="radio-inline">
                        <input type="radio" name="sex" id="inlineRadio2" value="女">女
                    </label>
                    <!--<input type="radio" name="sex" value="男">男-->
                    <!--<input type="text" class="form-control" id="sex" name="sex" placeholder="请输入性别">-->
                </div>
            </div>
            <div class="form-group">
                <label for="phone" class="col-sm-2 control-label">手机号</label>
                <div class="col-sm-10">
                    <input type="text" class="form-control" id="phone" name="phone" placeholder="请输入手机号码">
                </div>
            </div>
            <div class="form-group">
                <label for="birthday" class="col-sm-2 control-label">出生日期</label>
                <div class="col-sm-10">
                    <input type="text" class="form-control" id="birthday" name="birthday" placeholder="请输入出生日期">
                </div>
            </div>
            <div class="form-group">
                <label for="address" class="col-sm-2 control-label">家庭住址</label>
                <div class="col-sm-10">
                    <input type="text" class="form-control" id="address" name="address" placeholder="请输入家庭住址">
                </div>
            </div>
            <div class="form-group">
                <div class="col-sm-offset-2 col-sm-10">
                    <button type="submit" class="btn btn-primary btn-lg btn-block">添加</button>
                </div>
            </div>
        </form>
    </div>
</body>
</html>
<script type="text/javascript">
    $("#birthday").datetimepicker({
        format: "yyyy-mm-dd",
        minView: 'month',
        autoclose: true,
        language: 'zh-CN'
    })
    $(function () {
        $('form').bootstrapValidator({
            message: 'This value is not valid',
            feedbackIcons: {
                valid: 'glyphicon glyphicon-ok',
                invalid: 'glyphicon glyphicon-remove',
                validating: 'glyphicon glyphicon-refresh'
            },
            fields: {
                stuid: {
                    message: '请输入学号',
                    validators: {
                        notEmpty: {
                            message: '学号不能为空'
                        },
                        stringLength: {
                            min: 10,
                            max: 10,
                            message: '学号必须为10位'
                        },
                        numeric: {
                            message: '学号必须数字'
                        }
                    }
                },
                name: {
                    validators: {
                        notEmpty: {
                            message: '姓名不能为空'
                        },
                        stringLength: {
                            max: 10,
                            message: '姓名最大不能超过10个字符'
                        },
                        regexp: {
                            regexp: /[\u4e00-\u9fa5]/,
                            message: '姓名必须为汉字'
                        }
                    }
                },
                sex: {
                    validators: {
                        notEmpty: {
                            message: '性别不能为空'
                        },
                        regexp: {
                            regexp: /^(男|女)$/,
                            message: '性别必须为“男”或“女”'
                        }
                    }
                },
                phone: {
                    validators: {
                        stringLength: {
                            min: 11,
                            max: 11,
                            message: '手机号必须为11位'
                        },
                        numeric: {
                            message: '手机号必须为数字'
                        }
                    }
                }
            }
        });
    });
</script>

 

PHP代码:

<?php
    include 'myFounction.php';
    if (empty($_POST)) {
        show_error('非法访问','register.html',5);
    }

    //获取表单信息
    $stuid = $_POST['stuid'];
    $name = $_POST['name'];
    $sex = $_POST['sex'];
    $phone = $_POST['phone'];
    $birthday = $_POST['birthday'];
    $address = $_POST['address'];

    $stuid=trim($stuid);
    $name=trim($name);
    if (empty($stuid) || empty($name)){
        die();
        show_error('学号或姓名不能为空','register.html',5);
    }

    $stuid = htmlspecialchars(addslashes($stuid));
    $name = htmlspecialchars(addslashes($name));
    $sex = htmlspecialchars(addslashes($sex));
    $phone = htmlspecialchars(addslashes($phone));
    $birthday = htmlspecialchars(addslashes($birthday));
    $address = htmlspecialchars(addslashes($address));

    if (empty($birthday)){
        $birthday = 'null';
    }else{
        $birthday = sprintf("'%s'",$birthday);
    }

    $sql1="select * from student where stuid='$stuid'";
    $sql2="insert into student(id,stuid,name,sex,phone,birthday,address) value (null,'$stuid','$name','$sex','$phone',$birthday,'$address')";


    //连接mysql
    $mysqli = @new mysqli("localhost","root","","myschool");
    if ($mysqli->connect_errno){
        die("数据库连接失败".$mysqli->connect_errno);
    }
    //设置编码格式
    $mysqli->set_charset('utf8');

    //执行select查看是否已经存在
    $res1 = $mysqli->query($sql1);
    //var_dump($res1);
    if ($res1->num_rows==1){

    }

    //执行insert sql
    $res = $mysqli->query($sql2);
    if ($res === false){
        show_error("执行SQL语句出错,请检查<br>".$sql2,"register.html",5);
    }
    $n = $mysqli->affected_rows;
    if ($n > 0){
        show_success("添加成功!","register.html",5);
    }

    //关闭数据库连接
    $mysqli->close();


?>

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值