香港高速VIP云机房火爆上线啦!无需备案,开通即用!配套《巅云自助建站系统3.0》将带给您飞一般的可视化拖拽建站体验,欢迎免费体验。

老生常谈php中传统验证与thinkphp框架(必看篇)

一佰互联网站制作(www.yinxi.net) 发布日期 2019-04-25 14:41:32 浏览数: 50

PHP(超文本预处理器)可用于小型网站的搭建,当用户需要注册登录是,需要与后台数据库进行匹配合格才能注册和登录,传统的方式步骤繁多,需要先连接数据库再用sql语句进行插入。

<?php
header("Content-type: text/html; charset=utf-8");
$conn =mysqli_connect("localhost","root","");
if (!$conn){
   echo "<script>alert("连接失败!");history.go(-1);</script>";
  } 
mysqli_select_db($conn,"liuyanban");
mysqli_query($conn,"SET NAMES utf8");
$password=$_POST["password"];
$username=$_POST["username"];
$face="yellow.png";
$result=mysqli_query($conn,"SELECT username from user1 where username = "$username""); 
$a=mysqli_num_rows($result);
if($a)
{    
   echo "<script language=javascript>alert("用户名已存在!");location.href="reg.html"</script>";
}
else
{   
    $sql = mysqli_query($conn,"INSERT INTO user1(username,password,face)VALUES("1" ,"2","yellow.png")");
   if($sql)
   {
      echo "<script language=javascript>alert("注册成功!");location.href="login.html"</script>";
   }
   else
   {
      echo "<script>alert("注册失败!");location.href="reg.html"</script>";
   }
}
?>

以上是一个原生php注册实例,需要用mysqli_select_db()、mysqli_query()等函数先进行数据库连接,同时只有通过mysqli_query()函数才能执行sql语句,最后通过if语句进行类别判断和其他一系列限制操作。在原生php阶段实用性比较高,便于理解,过程很清晰,但是在一个项目工程中用这样的语句代码编写不便于相互交流,非常繁重复杂,所以需要运用thinkphp框架搭建项目才能使编码人员相互可以对接,也便于后期代码的修改和功能的添加。那么这里就不赘述框架详细了,所以在thinkphp框架下mvc模式中运用控制器(C)和模型(M)进行表单自动验证:

控制器中使用表单静态验证:

public function doreg(){
       $data=D("user");
       $d=array();
         $d["username"]=$_POST["username"];
         $d["password"]=$_POST["password"];
         $d["time"]=date("Y-m-d H:i:s",time());
         $d["qq"]=$_POST["qq"];
         $d["class"]=$_POST["class"];
         $mess=$data->create();
         if (!$mess){    //表单自动验证
            $this->error($data->getError(),"Member/member",3);
         }else{
            $data->add();
            echo "<script language=javascript>alert("注册成功!");location.href="member.html"</script>";
           }
         }

模板中列出需要验证的字段:

<?php 
namespace HomeModel;
use ThinkModel;
  class UserModel extends Model{
    protected $tableName ="user";   
    protected $_validate=array(                 //进行静态验证
     //array(验证字段1,验证规则,错误提示,[验证条件,附加规则,验证时间]),
      array("username","require","用户名必填!"),
      array("username","","帐号名称已经存在!",0,"unique",1),
      array("repassword","password","两次密码不一致!",0,"confirm"),
      array("qq","require","qq必填!"),
      array("qq","","帐号名称已经存在!",0,"unique",1),
      array("class","require","班级必填!"),
      array("j_verify","require","验证码必须!"),
    );
     
  }
?>

这里以注册为例,登录类似,若验证错误,则运用$this->error($data->getError(),"Member/member",3);表单静态验证使用很方便。

以上这篇老生常谈php中传统验证与thinkphp框架(必看篇)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持网页设计。

一佰互联是全国知名建站品牌服务商,我们有九年网站建设、网站制作、网页设计、php开发和域名注册及虚拟主机服务经验,提供的自助建站服务更是全国有名。近年来还整合团队优势自主开发了可视化多用户”巅云建站系统“3.0平台版,拖拽排版网站制作设计,轻松实现pc站、手机微网站、小程序、APP一体化全网营销网站建设 ,已成功的为全国上百家网络公司提供自助建站平台搭建服务。

相关新闻more

27
04月
php文档工具PHP Documentor安

本文讲述了php文档工具PHP Documentor安装与使用方法。分享给大家供大家参考,具体如下:PHP Documentor是PEAR下... >>详情

01
05月
完美解决dedecms中的[html][/h

终于解决了完美解决dedecms中的[html][/html]和[code][/code]问题,因为我的php不太熟练,所以正则搞了好几天,... >>详情

27
04月
PHP 设计模式系列之 specificat

1、模式定义规格模式是组合模式的一种扩展,在框架性开发中使用较多(项目级开发很少使用),这里做一个简单的介绍。规格模式(Specificat... >>详情

02
05月
网站数据如何查询并优化关键词?

对于站长朋友们,网站的各种数据尤其重要,因为那些数据直接影响着网站的生存,而优化关键词也成为了重中之重,因为网站的生存主要就是靠流量,而若无... >>详情

营业执照. cdn加速服务 备案系统认证 网络安全协会 我们的支付方式AAA认证
上海 北京 深圳 广州 天津 杭州 南京 武汉 成都 沈阳 大连 长沙 济南 青岛 苏州 福州 无锡 哈尔滨 宁波 重庆 大庆 厦门 西安 长春 珠海 郑州 海口 昆明 太原 石家庄 温州 合肥 乌鲁木齐 南宁 南通 合肥 兰州 呼和浩特 贵阳 烟台 秦皇岛 包头 唐山 银川 汕头 连云港 威海 西宁 湛江 北海 万州 涪陵 长寿 黔江 永川 丰都 忠县 江津 南川 开县 云阳 万盛 梁平 垫江 巫山 城口 建站宝盒 免费建站 门户网站建设 微信网站 手机网站 门户网站制作

7x24小时服务电话:18581389571 传真:023-85725751 免费建站交流群:236412099 139947842(自助建站交流) E-Mail:post@yinxi.net 网站投诉:
重庆楚捷科技有限公司 一佰互联©版权所有 自助建站(www.yinxi.net,Inc.) 2001-2020 All Rights Reserved 本站程序受法律保护,网站法律顾问:ITLAW-庄毅雄律师
中华人民共和国信息产业部网站备案号:渝ICP备12000592号