• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

表单验证之PHP代码框架_php

php 搞代码 7年前 (2018-06-21) 135次浏览 已收录 0个评论

   我在上一篇文章中讲到使用JavaScript做集成表单验证的方法,对于客户端验证已经足够,但好的表单验证应同时在客户端和服务器端进行――这正是写本文的目的。

    如果采用一般的验证方法应该怎样写呢?

    if ($_POST[‘some’] 不满足 condition) {

             die(“wrong”);

    }

    类似于javascript的集成验证方法,在php中也可利用数组和eval语句实现表单验证(服务器端)框架。一般步骤:

    1、将用户提交的数据从$_GET或$_POST数组收集到自定义数组(可选),

    2、填充验证数组(包括变量名、条件及提示等),

    3、添加固定的验证代码。

    下面我来举例说明,假设你要从网页中收集用户姓名及年龄,并且在服务器端实现数据验证,那么你可能需要form.html和act.php。form.html中包含表单:

    <form method=post action=act.php>

        姓名:<input type=text name=’name’><br>

        年龄:<inupt type=text name=’uage’ ><br>

        <input type=submit value=”提交”>

    </form>

    act.php中将实现表单的验证:

    $userinfo = array();                 // 步骤1

    $userinfo[‘name’] = isset($_POST[‘uname’]) ? $_POST[‘uname’] : ”;

    $userinfo[‘age’] = isset($_POST[‘uage’]) ? (int)$_POST[‘uage’] : 0;

    $error_message = “”;           // 错误信息

    // 步骤2

    $elems = array(
        array(“/$userinfo[‘name’]”, ‘strlen(#)<1’, ‘姓名不能为空!’),

        // 若省略步骤1则按如下方式改写:

        // array(“/$_POST[‘uname’]”, ‘strlen(#)<1’, ‘姓名不能为空!’),

        array(“/$userinfo[‘age’]”, ‘#<=0’, ‘年龄不正确!’)

    );

    // 步骤3

    for($i = 0; $i < count($elems); $i++) {
        if(eval(“if(“.preg_replace(“/[#]/”, $elems[$i][0], $elems[$i][1]).”) return false;”) === false) {
        $error_message .= $elems[$i][2];

        }
    }

    这样,我们每次只须填充验证数组$elems就可完成表单验证。

    希望对你们有用,我也很想知道你们是怎么做的。

    这样,我们每次只须填充验证数组$elems就可完成表单验证。

    希望对你们有用,我也很想知道你们是怎么做的。

    这样,我们每次只须填充验证数组$elems就可完成表单验证。

    希望对你们有用,我也很想知道你们是怎么做的。

http://www.gaodaima.com/48081.html表单验证之PHP代码框架_php

欢迎大家阅读《表单验证之PHP代码框架_php》,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:表单验证之PHP代码框架_php

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址