zoukankan      html  css  js  c++  java
  • Think php TP5 CURD 增删改查全部源码

    Think php (TP5) CURD源码如下:


    控制器(Curd.php):

    <?php  
    	namespace appackcontroller;
    	use thinkController;
    	use thinkDb;
    	use thinkRequest;
    
    	class Curd extends Controller
    	{
    		//	新增
    		public function add(){
    			//	判断是否提交的有数据
    			if(request()->isPost()){//	有,添加
    				//	获取前台传过来的值
    				$data = input();
    				//	利用助手函数Db指向insert方法 加入数据库
    				$res = Db('curd')->insert($data);
    				//	判断是否成功
    				if($res){
    					$this->success('添加成功','lists');
    				}else{
    					$this->error('添加失败');
    				}
    			}else{//	无,调取添加页面
    				return $this->fetch('add');
    			}
    			
    		}
    
    		//	显示
    		public function lists(){
    			//	利用助手函数Db指向 select方法 查看数据表中的内容
    			$lists = Db('curd')->select();
    			//	将查找的内容 利用assign 渲染模板变量数据到前台
    			$this->assign('lists',$lists);
    			//	返回显示页面
    			return $this->fetch('lists');
    		}
    
    		//	删除
    		public function del(){
    			//	获取前台删除的id
    			$id = input('id');
    			//	利用助手函数Db指向 delete方法 删除数据表内容
    			$res = Db('curd')->delete($id);
    			//	判断是否成功
    			if($res){
    				$this->success('删除成功','lists');
    			}else{
    				$this->error('删除失败');
    			}
    		}
    
    		//	修改
    		public function edit(){
    			//	判断是否有提交的数据
    			if(request()->isPost()){//	有,修改数据、
    				//	获取前台的数据
    				$info = input();
    				//	利用助手函数Db指向 update方法 修改数据表相应的内容
    				$res = Db('curd')->update($info);
    				//	修改有三种情况  1:修改数据 返回true    2:没有修改数据 返回0    3:修改失败返回false
    				//	前两种都算修改成功 所以要进行判断
    				if($res != false){
    					$this->success('修改成功','lists');
    				}else{
    					$this->success('修改失败','lists');
    				}
    			}else{//	无,调取修改页面
    				//	获取修改该id  	(/d强制转换为整形类型)
    				// 因为修改是根据主键id修改的  所以要用修饰符转换一下
    				$id = input('id/d');
    				//	利用助手函数Db指向 find方法 查询数据表中一条数据
    				$info = Db('curd')->find($id);
    				//	将查找的内容 利用assign 渲染模板变量数据到前台
    				$this->assign('info',$info);
    				//	返回到修改页面
    				return $this->fetch('edit');
    			}
    
    		}
    
    	}
    
    ?>

     add视图(add.html):

    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>Document</title>
    </head>
    <body>
    	<form action="{:url('add')}" method="post">
    		姓名:<input type="text" name="user"><br>
    		年龄:<input type="text" name="sex"><br>
    		<input type="submit" value="提交">
    	</form>
    </body>
    </html>

    lists视图(lists.html): 

    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>Document</title>
    </head>
    <body>
    	<a href="{:url('index')}">添加</a>
    	<table border="1" cellspacing="0">
    		<tr>
    			<th>ID</th>
    			<th>姓名</th>
    			<th>年龄</th>
    			<th>操作</th>
    		</tr>
    		{foreach name="lists" item="vo"}
    		<tr>
    			<td>{$vo.id}</td>
    			<td>{$vo.user}</td>
    			<td>{$vo.sex}</td>
    			<td>
                            //    将ID提交过去
    				<a href="{:url('del','id='.$vo['id'])}">删除</a>
    				<a href="{:url('edit','id='.$vo['id'])}">修改</a>
    			</td>
    		</tr>
    		{/foreach}
    	</table>
    </body>
    </html>

     edit视图(edit.html):

    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>Document</title>
    </head>
    <body>
    	<form action="{:url('edit')}" method="post">
            //    修改添加隐藏域          value 默认值
    		<input type="hidden" name="id" value="{$info.id}">
    		姓名:<input type="text" name="user" value="{$info.user}"><br>
    		年龄:<input type="text" name="sex" value="{$info.sex}"><br>
    		<input type="submit" value="提交">
    	</form>
    </body>
    </html>

    数据库:

                                                                                                                         ----end 

  • 相关阅读:
    IIS配置Asp.net时,出现“未能加载文件或程序集“System.Web.Extensions.Design, Version=1.0.61025.0”
    如何ping测有端口的网站
    职场情况--小领导人品不好,大领导很欣赏我,该不该将小领导的搓事告诉大领导?
    https://www.cnblogs.com/netoxi/p/7258895.html
    java基本数据类型
    不用犹豫什么时候声明实例变量或者拒不变量
    java多线程
    架构考虑
    多线程一共就俩问题:1.线程安全(访问共享数据) 2.线程通信(wait(),notify())
    csrf攻击
  • 原文地址:https://www.cnblogs.com/zhumengyang/p/13346633.html
Copyright © 2011-2022 走看看