美文网首页
12月19日早上:管理员登录与验证

12月19日早上:管理员登录与验证

作者: FKTX | 来源:发表于2017-12-19 17:49 被阅读0次

    这一节重点内容:验证规则与查询结果返回(有难度,有的语法不熟悉,比较痛苦)

    上一节中,给提交按钮添加了点击事件,具体代码如下:

    有个疑问,为什么箭头那里,一定要这么写呢?{}代表什么意思?:url又代表什么意思?还有:url()又代表什么意思?

    解释:通常将地址写死的写法都是url:"www.afaljl.com",这里这么写,是因为thinkphp5中对于这样的语法,经过底层php代码的转换处理,就会提交到某个指定控制器中的指定方法,让这个指定方法去处理

    可以看到,这是提交给checklogin这个方法的数据。而checklogin这个方法存在于User.php这个控制器中。前端的数据提交部分已经写好了。下面就开始写User.php控制器中的方法了。

    首先,虽然前端提交了数据到checklogin方法中,但是,如果checklogin方法不接收数据的话,还是无法进行处理。因此需要先接收前端发过来的请求。一旦需要接收前端发送过来的请求,就需要用think\Request类,而且我估计他的这个Request $request是固定的,表示形参是request对象。这个对象中有各种成员、方法。

    补充:

    接收到前端的请求之后,先测试一下返回给前端的数据能否显示出来,就有了如下代码:

    前面一节在编写前端代码的时候,留下了一个空,那就是当前端接收到后端返回数据的时候,前端该用那个方法如何处理?下面就把前面留下的空给补全。

    上面这一步目前只是测试,如果没问题,那么登录页面一旦提交数据,就会弹窗,弹出来数组格式。又或者这么写:

    这样就将success情况下,接收到的对象中status成员的值给弹出来了。。。

    上面事情做完,如果一切顺利,有弹窗弹出相关信息,那么就说明前端可以成功提交数据给后端,后端处理完之后,也可以把数据成功返回给前端,并且展示出来。

    再将前端代码做一些修改,若状态值为1就跳转,否则报错

    下面,就开始对前端提交的数据进行验证,目前已知前端提交数据到User.php控制器checklogin方法中,因此在checklogin方法中,对提交上来的数据进行验证:

    补充:

    这边如果没问题,那么在页面尝试输入的时候,若没有输入,则会报出相关的提示

    上面的验证码错误的规则忘记写了,这里补充一下

    这里的验证,是验证用户是否输入数据,但是还没有验证数据的真实性。因此,下面需要去数据库中进行验证。

    在tp5中,需要在database.php这里设置数据库的连接

    设置好连接之后,开始构造数据库查询条件语句。但是,刚构造一半,发现得使用model方法,所以还得先创建model,路径是application/index目录,创建一个model文件夹,里面再创建一个User.php的model。需要注意的是,这里的model文件和控制器的User.php重名了。因此后面使用的时候还要注意一下。

    在User.php中导入这个模型,方便使用系统的内置方法。之所以取名叫User.php,是因为数据库中那张表就叫user.

    导入模型后,接着编写前端提交过来的数据查询


    总结:

    这一节内容比较多,因此总结很有必要。

    总的来说,我认为这一节内容就分为2块,第一块,前端的数据提交,包括提交方式ajax,能否成功接收后端返回的数据;第二块,后端的数据处理,包括用户是否有输入,输入内容在数据库中能否查询到?这两种情况如何返回给前端?

    另外,中间还掺杂着模板的建立与模板方法的使用。

    相关文章

      网友评论

          本文标题:12月19日早上:管理员登录与验证

          本文链接:https://www.haomeiwen.com/subject/bmxvwxtx.html