Android程序员学PHP开发(39)-ThinkPHP5.0(11)后台操作数据库(2)查询与删除-phpStudy+Sublime
2017-03-10 17:06
996 查看
转载请注明出处:http://blog.csdn.net/iwanghang/article/details/61199927
觉得博文有用,请点赞,请评论,请关注,谢谢!~
我们上一篇博文,已经完成了,在栏目添加页面想数据库插入数据。现在,我们要把数据库的信息显示出来,并实现删除。
也就是说,数据库必须掌握的“增、删、改、查”,上一篇我们实现了“增”,这一篇我们实现“查、删”。
截止到目前的项目源码:http://download.csdn.net/detail/iwanghang/9777108
// 查询cate表信息并打印 一条数据
$data = \think\Db::name('cate')->find();
print_r($data); 我们当然不是要查询一条数据,是查询全部数据:
// 查询cate表信息并打印 所有数据
$cateres = \think\Db::name('cate')->select();
dump($cateres);
id
<td>{$vo.id}</td> catename
<td title="{$vo.catename}"><a target="_blank" href="#" title="{$vo.catename}">{$vo.catename}</a></td> type
// 删除数据 http://www.kancloud.cn/manual/thinkphp5/135179 public function del()
{
$id = input('id');
if (db('cate')->delete($id)) {
return $this->success('删除栏目成功!','lst');
}else{
return $this->error('删除栏目失败!');
}
}
<td>
<a class="link-update" href="#">修改</a>
<!-- href="{:url('del',array('id'=>$vo.id))}" -->
<!-- 这段代码,以id=2为例,生成连接为:http://www.iwanghang.com/admin/cate/del/id/2.html -->
<!-- 也就是调用了控制器中的Cate.php中的del方法,并把id=2按照数组的形式传过去 -->
<a class="link-del" onclick="return confirm('你确定删除改栏目吗?')" href="{:url('del',array('id'=>$vo.id))}">删除</a>
</td>
转载请注明出处:http://blog.csdn.net/iwanghang/article/details/61199927
欢迎移动开发爱好者交流
沈阳或周边城市公司有意开发Android,请与我联系
联系方式
![](http://img.blog.csdn.net/20161116143246150)
微信:iwanghang
QQ:413711276
邮箱:iwanghang@qq.com
觉得博文有用,请点赞,请评论,请关注,谢谢!~
觉得博文有用,请点赞,请评论,请关注,谢谢!~
我们上一篇博文,已经完成了,在栏目添加页面想数据库插入数据。现在,我们要把数据库的信息显示出来,并实现删除。
也就是说,数据库必须掌握的“增、删、改、查”,上一篇我们实现了“增”,这一篇我们实现“查、删”。
截止到目前的项目源码:http://download.csdn.net/detail/iwanghang/9777108
1、查
(1)查询数据
/application/admin/controller/Cate.php// 查询cate表信息并打印 一条数据
$data = \think\Db::name('cate')->find();
print_r($data); 我们当然不是要查询一条数据,是查询全部数据:
// 查询cate表信息并打印 所有数据
$cateres = \think\Db::name('cate')->select();
dump($cateres);
// 分配模板 $this->assign('cateres',$cateres);
(2)显示数据
/application/admin/view/Cate/lst.htmlid
<td>{$vo.id}</td> catename
<td title="{$vo.catename}"><a target="_blank" href="#" title="{$vo.catename}">{$vo.catename}</a></td> type
<td>{$vo.type}</td>如果没有判断我们用上面的写法,可是我们需要判断:(下面 用了eq 和 == ,在这里判断效果是一样的,用其中一种写法就可以)
<td> {if condition="$vo['type'] eq 0"} 列表栏目 {elseif condition="$vo['type'] == 1"/}留言板 {else /} 其他类型 {/if} </td>
2、删
(1)创建可以接到id的删除函数
/application/admin/controller/Cate.php // 删除函数// 删除数据 http://www.kancloud.cn/manual/thinkphp5/135179 public function del()
{
$id = input('id');
if (db('cate')->delete($id)) {
return $this->success('删除栏目成功!','lst');
}else{
return $this->error('删除栏目失败!');
}
}
(2)回传数据
/application/admin/view/Cate/lst.html<td>
<a class="link-update" href="#">修改</a>
<!-- href="{:url('del',array('id'=>$vo.id))}" -->
<!-- 这段代码,以id=2为例,生成连接为:http://www.iwanghang.com/admin/cate/del/id/2.html -->
<!-- 也就是调用了控制器中的Cate.php中的del方法,并把id=2按照数组的形式传过去 -->
<a class="link-del" onclick="return confirm('你确定删除改栏目吗?')" href="{:url('del',array('id'=>$vo.id))}">删除</a>
</td>
3、完整代码:
/application/admin/controller/Cate.php
<?php /** * 列表控制器 * http://www.iwanghang.com/admin/cate/lst */ namespace app\admin\controller; use think\Controller; class Cate extends Controller { // 列表页面 public function lst() { // 查询cate表信息并打印 一条数据 // $data = \think\Db::name('cate')->find(); // print_r($data); // 查询cate表信息并打印 所有数据 $cateres = \think\Db::name('cate')->select(); dump($cateres); // echo "<pre>"; // var_dump($data); // echo "</pre>"; // 分配模板 $this->assign('cateres',$cateres); // 循环输出标签 http://www.kancloud.cn/manual/thinkphp5/125017 // 将标签输出到 /application/admin/view/Cate/lst.html {volist name="cateres" id="vo"} {/volist} // 条件判断 http://www.kancloud.cn/manual/thinkphp5/125019 // 用于判断栏目类型 /application/admin/view/Cate/lst.html // {if condition="$vo['type'] eq 0"} 列表栏目 // {elseif condition="$vo['type'] == 1"/}留言板 // {else /} 其他类型 // {/if} return $this->fetch(); } // 添加页面 // 对应文件 /application/admin/view/Cate/add.html // 助手函数 http://www.kancloud.cn/manual/thinkphp5/144731 // 助手函数中的:input 获取输入数据 支持默认值和过滤 // 把数据接过来以后,要判断(也就是验证数据有的有效性,不能为空等等),然后添加到数据库 // 验证器 http://www.kancloud.cn/manual/thinkphp5/129352 // 添加一条数据 http://www.kancloud.cn/manual/thinkphp5/135177 public function add() { if (request()->isPost()) { $data = [ 'catename' => input('catename'), 'keywords' => input('keywords'), 'desc' => input('desc'), //'type' => input('type'), 这样写没有默认值,我用下面的三元运算符的写法 'type' => input('type') ? input('type') : 0, // 三元运算符 如果input('type')不为空,则取input('type'),否则取0 ]; // 验证器 http://www.kancloud.cn/manual/thinkphp5/129352 // 在需要进行User验证的地方,添加如下代码即可: $validate = \think\Loader::validate('Cate'); if (!$validate->check($data)) { return $this->error($validate->getError()); die(); } // 添加一条数据 $db = \think\Db::name('cate')->insert($data); // 判断是否成功 if ($db) { return $this->success('添加栏目成功!','lst'); }else{ return $this->error('添加栏目失败!'); } return; } return $this->fetch(); } // 删除函数 // 删除数据 http://www.kancloud.cn/manual/thinkphp5/135179 public function del() { $id = input('id'); if (db('cate')->delete($id)) { return $this->success('删除栏目成功!','lst'); }else{ return $this->error('删除栏目失败!'); } } }
/application/admin/view/Cate/lst.html
<?php /** * 列表控制器 * http://www.iwanghang.com/admin/cate/lst */ namespace app\admin\controller; use think\Controller; class Cate extends Controller { // 列表页面 public function lst() { // 查询cate表信息并打印 一条数据 // $data = \think\Db::name('cate')->find(); // print_r($data); // 查询cate表信息并打印 所有数据 $cateres = \think\Db::name('cate')->select(); dump($cateres); // echo "<pre>"; // var_dump($data); // echo "</pre>"; // 分配模板 $this->assign('cateres',$cateres); // 循环输出标签 http://www.kancloud.cn/manual/thinkphp5/125017 // 将标签输出到 /application/admin/view/Cate/lst.html {volist name="cateres" id="vo"} {/volist} // 条件判断 http://www.kancloud.cn/manual/thinkphp5/125019 // 用于判断栏目类型 /application/admin/view/Cate/lst.html // {if condition="$vo['type'] eq 0"} 列表栏目 // {elseif condition="$vo['type'] == 1"/}留言板 // {else /} 其他类型 // {/if} return $this->fetch(); } // 添加页面 // 对应文件 /application/admin/view/Cate/add.html // 助手函数 http://www.kancloud.cn/manual/thinkphp5/144731 // 助手函数中的:input 获取输入数据 支持默认值和过滤 // 把数据接过来以后,要判断(也就是验证数据有的有效性,不能为空等等),然后添加到数据库 // 验证器 http://www.kancloud.cn/manual/thinkphp5/129352 // 添加一条数据 http://www.kancloud.cn/manual/thinkphp5/135177 public function add() { if (request()->isPost()) { $data = [ 'catename' => input('catename'), 'keywords' => input('keywords'), 'desc' => input('desc'), //'type' => input('type'), 这样写没有默认值,我用下面的三元运算符的写法 'type' => input('type') ? input('type') : 0, // 三元运算符 如果input('type')不为空,则取input('type'),否则取0 ]; // 验证器 http://www.kancloud.cn/manual/thinkphp5/129352 // 在需要进行User验证的地方,添加如下代码即可: $validate = \think\Loader::validate('Cate'); if (!$validate->check($data)) { return $this->error($validate->getError()); die(); } // 添加一条数据 $db = \think\Db::name('cate')->insert($data); // 判断是否成功 if ($db) { return $this->success('添加栏目成功!','lst'); }else{ return $this->error('添加栏目失败!'); } return; } return $this->fetch(); } // 删除函数 // 删除数据 http://www.kancloud.cn/manual/thinkphp5/135179 public function del() { $id = input('id'); if (db('cate')->delete($id)) { return $this->success('删除栏目成功!','lst'); }else{ return $this->error('删除栏目失败!'); } } }转载请注明出处:http://blog.csdn.net/iwanghang/article/details/61199927
欢迎移动开发爱好者交流
沈阳或周边城市公司有意开发Android,请与我联系
联系方式
微信:iwanghang
QQ:413711276
邮箱:iwanghang@qq.com
觉得博文有用,请点赞,请评论,请关注,谢谢!~
相关文章推荐
- Android程序员学PHP开发(38)-ThinkPHP5.0(10)后台操作数据库(1)插入-phpStudy+Sublime
- Android程序员学PHP开发(37)-ThinkPHP5.0(9)后台引入模板分离及UEditor-phpStudy+Sublime
- Android程序员学PHP开发(40)-ThinkPHP5.0(12)后台操作数据库(3)修改-phpStudy+PhpStorm
- Android程序员学PHP开发(35)-ThinkPHP5.0(7)自动生成-phpStudy+Sublime
- Android程序员学PHP开发(36)-ThinkPHP5.0(8)前台引入模板分离-phpStudy+Sublime
- Android程序员学PHP开发(31)-ThinkPHP5.0(3)多级命名空间-PhpStorm
- Android程序员学PHP开发(34)-ThinkPHP5.0(6)自动生成-PhpStorm
- Android程序员学PHP开发(29)-ThinkPHP5.0(1)初体验-PhpStorm
- Android程序员学PHP开发(32)-ThinkPHP5.0(4)命名空间与公共空间-PhpStorm
- Android程序员学PHP开发(30)-ThinkPHP5.0(2)命名空间-PhpStorm
- Android程序员学PHP开发(33)-ThinkPHP5.0(5)命名空间与TP5-PhpStorm
- android系统内置数据库SQLite的建库、建表、添加、删除、修改、查询等基本操作
- PHP开发之THINKPHP多表联合查询操作的三中方法
- PHP开发之THINKPHP多表联合查询操作的三中方法
- PHP Yii 框架的数据库操作笔记一、查询,更新,删除的方法(AR模式)!
- Yii 框架里数据库操作详解-[增加、查询、更新、删除的方法 'AR模式']
- Android程序员学PHP开发(24)-数组操作相关函数(2)回调函数篇-PhpStorm
- Android Sqlite数据库执行插入查询更新删除的操作对比
- Android程序员学PHP开发(23)-数组操作相关函数(1)键名键值篇-PhpStorm
- Android程序员学PHP开发(27)-数据库练习-PhpStorm