ThinkPHP增/查/改

使用ThinkPHP框架开发项目所需的设计思路(新手小白):
1.下载框架,配置域名地址(project/ThinkPHP5.1/public),域名自己随意设计,保证在浏览器访问时直接跳转至(ThinkPHP框架,初心十载界面)即可;
2.使用Ide软件,打开ThinkPHP5.1框架,开发时配置必备项,在config/app.php文件中将调试模式设为true、是否支持多模块设为true;然后在database.php文件中配置数据库名、用户名、密码、端口、表前缀,将自动写入时间戳字段设置为true(在设计数据库的时候就可以将创建时间、更新时间、软删除都设置为int类型);
3.将该项目所有要用到的静态样式文件一律保存到公共文件夹public/static目录下;
application下建立admin模块,admin模块下分别建立controller控制器以及view模板,application下建立公共模块common,common模块下分别建立model模型以及validate模型验证器;
4.注册操作设计思路:(这里就不设计别的模块了,就拿admin模块来说)
首先建立路由,考虑到admin模块下需要建立多个路由,因此建立分组路由,建立注册路由,建立Index控制器并继承Controller基类,设置好命名空间,创建注册方法即(register)。建立登录模板即(view/index/register.html),在register.html文件下将用户注册时输入的数据用form表单接收,给注册按钮绑定一个id,在JavaScript标签下绑定单击事件,使用ajax接收数据,设置通过模板访问的控制器方法地址,传输方式,数据,数据类型;根据url访问到控制器中的方法后需要判断表单中的数据是否是以ajax方式提交过来,如果是,则将数据保存至数组中,选择正确的模型,并将数据传递给模型处理,模型中创建方法并接收数据,然后在方法内部创建模型验证器,模型验证器应继承Validate基类,在模型验证器中设置验证规则,即传输过来的数据应当遵循的规则,比如不能为空、与某张表而言不能重复等等规则;再设置验证场景,即注册场景,注册场景中只验证接收过来的指定数据,比如注册只验证用户名、密码、确认密码、昵称、邮箱等等,并将验证的结果返回给模型,模型在接收模型验证器返回的数据之后判断验证是否通过,如果没有通过则使用模型验证器获取错误信息,如果通过则将接收的数据存储到数据库中并返回一个结果集,然后是否有结果集返回,如果有结果集返回则向控制器返回1,如果没有则向控制器返回错误信息(信息可自定义);控制器的注册方法中,接收模型处理之后的信息,如果结果集不为1,则给出错误信息,反之,则表示注册成功,并给定注册成功之后的跳转地址,控制器接收数据之后,将数据传回模板,模板接收到数据之后,根据成功信息的code来进行判断,如果code为1,则表示注册成功,并跳转控制器中给定的地址,如果失败,则提示注册失败。这就是注册操作(即向数据库新增数据的整个操作流程以及思路)。
使用ThinkPHP开发,登录操作思路:
在模板中使用ajax接收用户输入的数据,将数据保存在表单中,通过表单序列化将数据接收,访问控制器中的登录方法,在控制器的login方法中判断传输过来的数据,是否通过ajax传送,如果是,则将数据保存在一个数组中,然后匹配登录操作的模型,并将数据传输过去,登录模型接收到数据后,再创建登录操作的模型验证器,在登录模型验证器中验证用户传输过来的字段并添加验证规则以及验证场景,验证场景中只验证用户登录所需要传输的用户名和密码,此时会到登录模型中,判断在登录模型验证器中验证的结果是否成功,如果失败,则返回失败信息,如果验证成功,进行下一步操作,即通过用户传输过来的数据去数据库中查询并赋值给结果集,如果没有该结果返回,则显示用户名或密码错误,如果成功,则进行下一步判断,(通常登录操作中,会给用户以及管理员设定状态),因此需要判断状态是否为1,如果不为1,则返回此用户被禁用的信息,反之,则将这些数据存储到sessionData中,(session即表示用户的信息存储在服务端,只要用户退出或者浏览器关闭,则自动销毁,即有效防止用户误操作域名,也可以获取到用户信息,当然在这种设计中,需要考虑到初始化操作,即控制器中需要创建防止重复登录的方法,即initialize方法,通过判断session中是否含有数据,如果有数据则给定url跳转至用户登录完成的首页)并返回1,至控制器,控制器将模型处理的数据接收,并判断该数据返回值是否为1,如果不为1则向模板返回错误信息,反之向模板返回登录成功的信息,并给定成功登录之后的url地址,模板在接收到数据之后,判断数据返回的code值是否为1,如果为1,则提示登录成功,并跳转至控制器给定的成功登录跳转地址,反之,登录失败。
修改操作思路:
定义修改操作的路由(设置路由时第一个参数应该绑定id),然后在控制器中匹配修改的模型,并通过路由传送过来的id查询到该条数据记录并赋值给一个变量,再将变量保存到模板变量中,渲给模板,此时修改模板中即可接受到该数据集,涉及到修改的操作,需要传送一个隐藏域,因此通过模板变量获取id,然后为修改按钮绑定id,并添加点击事件,点击事件触发后,通过ajax接受用户要修改的数据,给定处理数据的url(即控制器中的修改方法),定义类型为post传输、定义数据为表单序列化、数据类型为json格式,此时回到控制器修改方法中,判断数据是否通过ajax提交,如果是,则将数据保存在变量中,并将数据通过模型来处理,提交给修改模型,并返回结果集(这里先不处理结果集),然后在模型的修改方法中创建修改验证器,并在验证器中建立验证规则进行验证,建立修改场景,并至验证传送过来的数据,此时模型修改方法中对验证的结果进行判断,如果失败,则返回错误信息,反之,通过接受的数据获取到id,并通过id在数据库中查询到这条数据信息,并指定要修改的信息为传输过来的信息,并返回结果集至控制器中,控制器接收到结果集后进行判断,如果结果不为1则返回错误信息,如果为1则给出修改成功的提示信息,并给定url跳转的地址,此时在模板中通过success方法接收数据,并判断code是否为1,从而给出用户提示操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值