①TP5--增删改查简单的demo

我先吐槽一下:因为工作需要研究tp5,去官网看了一下哎呦,资源挺多挺全啊!然后下载唯一免费的官方教程,我曹pdf打开533页。讲的很细但是开发能等看完才做吗?看到精简版快速入门的还软妹币20试读3章。寻思找个demo案例吧,要不加群拿源码,要不视频教程收费。特喵的框架是开源的但是教程是收费的。寻思去论坛看看问题,不是我喷好多技术小白的问题,我想看看怎么获取传参传值,泥煤那个系统变量是什么鬼?挣扎了3个小时我放弃了官网。在度娘上找到一个demo,吭哧吭哧啃完。一天半才搞出这些,我也是个技术新手,没接触过这个所以看着乱七八糟,还没时间耐心去看那个533 页的官方文档。对于官网这样可以理解代码不收钱总点挣点钱吧,但是你能不能给我一个最简单的增删改擦demo?下载下的是裸框~心累,明显浪费的很多时间在思考代码怎么写上。看来还是自己能力不到位,还要努力。吐槽完毕~

以下是正文:可能有的地方错误但是这是给新手小白看,绝对没有误导别人,我现在也就搞懂这些,只要能给各位看官们一点启发就证明我没白写。有错请指出~~~~~~我也学习学习~~没事别喷我,我这又不是义务分享,看不下去别吵吵自己滚。

总结:
a. 不可使用字母函数如:M,U,I等。可使用model,:url(),input()等助手函数进行操作(另附官网好心人发文链接 : http://www.thinkphp.cn/topic/42108.html )。
b. 获取form调教数据:$str=input('post.name'); || ('传递方法.字段名')。当是写post. 无字段名时自动获取全部的表单数据进行array写入。
c. 获取a标签传参:$str=input('id'); || ('参数名')。仅写a标签中的参数名称,input助手函数可自动判断post或者get方式。
d. 数据的处理操作建议将代码写入model中,然后通过controller进行实例化model类($test=model('Test');)。然后进行复制调用model中相应操作的方法($res=$test->addTest())。然后通过判断方法传值的true||false进行页面跳转验证及显示。
e. controller中只能通过Db助手函数进行数据的操作,同理model中无操作。
f. model命名应与数据表名一致,这样框架在执行操作时会自动查找相对应表。如果命名不一致,则在model中需要进行数据表的声明(protected $table='表名');然后操作中直接写(Test::操作名 )即可。

g.命令行是个好东西(另附整理链接: http://www.cnblogs.com/douz/p/6811471.html)

代码示例:
视图view:
1.增($user->pwd = md5(input('post.pwd'));)
方法1:数据库操作写入model中,controller只进行m中的方法调用
 
方法2:
方法3:使用Db助手函数直接调用数据库操作。
2.查:数据库操作写入model中,controller直接调用方法
//model中进行数据的select()操作
public function getUser()
{
$user = Demo::select();
return $user;
}
//controller中进行视图的加载和数据的传递
$res = $user->getUser();
//引入视图并传递查询结果
return view('\demo',['res'=>$res]);
3.改
//model中进行数据的select()操作
public function edit()
{
if(request()->isGet()){
$res = Db::table('user')->where('id',input('get.id'))->update(['user' => input('get.user')]) ;
if($res){
return $this->success('修改成功');
}else{
return $this->error('修改失败');
}
}
}
4.删:使用Db助手函数直接调用数据库操作。
public function del()
{
//return input('id');
if(request()->isGet()){
$res = Db::table('user')->where('id',input('id'))->delete();
if($res){
return $this->success('删除成功');
}else{
return $this->error('删除失败');
}
}
}
 
 
 
<---------------------------- 个人原创 | 转载请注明逗子 | 新手适合 | 大牛勿扰 | 有偏颇地方请指出我也学习学习 ----------------------------------->

TP5学习基础一:增删改查小demo的更多相关文章

  1. MVC3+EF4.1学习系列(二)-------基础的增删改查和持久对象的生命周期变化

    上篇文章中 我们已经创建了EF4.1基于code first的例子  有了数据库 并初始化了一些数据  今天这里写基础的增删改查和持久对象的生命周期变化 学习下原文先把运行好的原图贴来上~~ 一.创建 ...

  2. ASP.NET从零开始学习EF的增删改查

           ASP.NET从零开始学习EF的增删改查           最近辞职了,但是离真正的离职还有一段时间,趁着这段空档期,总想着写些东西,想来想去,也不是很明确到底想写个啥,但是闲着也是够 ...

  3. MyBatis学习系列二——增删改查

    目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring 数据库的经典操作:增删改查. 在这一章我们主要说明一下简单的查询和增删改, ...

  4. http://www.cnblogs.com/nangong/p/db29669e2c6d72fb3d0da947280aa1ce.htm ASP.NET从零开始学习EF的增删改查

    http://www.cnblogs.com/nangong/p/db29669e2c6d72fb3d0da947280aa1ce.htmlASP.NET从零开始学习EF的增删改查

  5. MVC4 经典增删改查详情demo

    MVC4 经典增删改查详情demo 源码 不解释 Mvc4增删改查详情Demo.7z public ActionResult Detail(int? id)  {    ViewData.Model ...

  6. SQL学习(二)SQL基础的增删改查

    在测试时使用数据库时,用的比较多的就是增删改查SQL了. 一.增加(insert into ...values) 用于向表中插入新记录 1.不指定列(表示:依次插入所有列的值) insert into ...

  7. MyBatis学习--简单的增删改查

    jdbc程序 在学习MyBatis的时候先简单了解下JDBC编程的方式,我们以一个简单的查询为例,使用JDBC编程,如下: Public static void main(String[] args) ...

  8. SSM-MyBatis-02:Mybatis最基础的增删改查(查全部和查单独一个)

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 继续上次的开始,这次记录的是增删改查,上次重复过的代码不做过多解释 首先先创建mysql的表和实体类Book ...

  9. python学习(list增删改查、及常用方法)

    1.Python多条件判断: 多条件判断if: passelse: pass循环 while for i = 0 while i > 1: print('hello') else: print( ...

随机推荐

  1. [C++]现行的试卷封面并获取学生题目得分信息以及学号信息的原型系统

    大二的时候写的一个CV小玩意,最终决定还是把它放出来,也许会帮助到很多人,代码写的很丑,大家多多包涵.附加实验报告主要部分. 课题背景及意义: 本项目主要目标是设计一套能自动分析我校现行的试卷封面并获 ...

  2. Map集合概述和特点

    A:Map集合概述和特点(Set底层依赖的是Map) 将键映射到值的对象 一个映射不能包含重复的键 每个键最多只能映射到一个值 B:Map接口和Collection接口的不同 Map是双列的(是双列集 ...

  3. javascript . 03 函数定义、函数参数(形参、实参)、函数的返回值、冒泡函数、函数的加载、局部变量与全局变量、隐式全局变量、JS预解析、是否是质数、斐波那契数列

    1.1 知识点 函数:就是可以重复执行的代码块 2.  组成:参数,功能,返回值 为什么要用函数,因为一部分代码使用次数会很多,所以封装起来, 需要的时候调用 函数不调用,自己不会执行 同名函数会覆盖 ...

  4. java.sql.SQLException: Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp

    下面是我查询数据库时打印出来的异常信息: ### Error querying database.  Cause: java.sql.SQLException: Value '0000-00-00 0 ...

  5. jQuery ajax 与服务器交互方法

    1.HTML <table> <tr> <td>用户名:</td> <td><input type="text" ...

  6. Excel图表-太极图

    p{ font-size: 15px; } .alexrootdiv>div{ background: #eeeeee; border: 1px solid #aaa; width: 99%; ...

  7. [原]docker 操作记录

    开启新容器 docker run --name 容器名字 -ti[d] 镜像 初始化命令(需要是阻塞的) 额外参数 -v 本地目录:容器目录[:ro] 映射本地路径和容器路径(时区同步.数据库dock ...

  8. 七个 Android 程序猿提高效率必备工具

    Android 程序猿提高效率必备工具 0x00 Code tree for GitHub 这个 Chrome 浏览器插件.Github 作为最大同性交友网站,每天的工作几乎是从打开这个网站开始的.当 ...

  9. Redis基础学习(三)—Key操作

    一.key的相关操作 1.删除 del key1 key2 ... Keyn 作用: 删除1个或多个键. 返回值: 不存在的key忽略掉,返回真正删除的key的数量.   2.重命名 rename k ...

  10. JS为网页添加文字水印【原创】

    最近需要实现为网页添加水印的功能,由于水印的信息是动态生成的,而百度谷歌上的方法往往都是为网页添加图片水印或为图片添加水印,而为网页添加文字水印相关资料较少,于是就自己动手写了这个代码. 通常加动态水 ...