• TP5 Think php 批量添加全部源码


    Think php (TP5)源码如下:


    add控制器(Yk.php):

    <?php  
    	namespace appackcontroller;
    	use thinkController;
    
    	header("content-type:text/html;charset=utf-8");
    	class Yk extends Controller{
    
    		public function add(){
    			if(request()->isPost()){
    
    				//	实例化model 第一种方式a
    				$yk_model = new YkModel;
    				//	获取的是字符串  用/a修饰符 强制转化为数组类型
    				//	分别赋值
    				$name = input('name/a');
    				$age = input('age/a');
    
    				//	array_map — 将回调函数作用到给定数组的单元上 
    				$data = array_map(function($name, $age){ 
    					return array('age' => $age, 'name' => $name); 
    				}, $name, $age, $ks_name, $three);
                    //    利用助手函数Db方法  第二种方式b
    				$res = Db('yk')->insertAll($data);
                    
                    //    利用model的方法    第一种方式a            
                    //    insertAll 只需要Db助手函数 与 saveAll 需要实例化model
    				// $res=$yk_model->saveAll($c);
    				// var_dump($res);die;
    				if($res){
    					$this->success('添加成功','lists');
    				}else{
    					$this->error('添加失败');
    				}
    			}else{
    				return $this->fetch('demo');
    			}
    		}

     add视图(add.html):

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8" />
        <title>TP5批量添加</title>
    </head>
        <body>
            //    提交方法add   提交方式 post
            <form action="{:url('add')}" method="post">
                                    //加一个[]成数组        
                姓名:<input type="text" name="name[]"><br>
                年龄:<input type="text" name="age[]"><br>
                 //   给一个class名称  此处是多条添加区域
                <div class="duo"></div>
                     //    赋给普通按钮一个点击效果触发JS
                <input type="button" value="+" onclick="dianji()">
                //    提交form表单
                <input type="submit" value="提交">
            </form>
        </body>
    </html>
    <!-- 引入JS样式 -->
    <script type="text/javascript" src="/static/back/js/jq.js"></script>
    <script type="text/javascript">
    //    点击事件触发
    function dianji(){
            //    定义一个空值用来接收多条添加的数据
            var str = "";
            //    这里面就是你要多条添加的数据和上面的一样 复制下来即可 最重要是name的 name[]
            str = "姓名:<input type='text' name='name[]'><br />年龄:<input type='text' name='age[]'>";
            //  赋给上面class为duo的div  append在每个匹配元素里面的末尾处插入参数内容。 
            $('.duo').append(str);
        }
    </script>

    lists控制器(Yk.php):

    public function lists(){
        //    利用助手函数Db 查看数据表中内容
    	$info = Db('yk')->select();
        //     assign 渲染模板变量数据到前台
    	$this->assign('info',$info);
        //    跳转至lists.html
    	return $this->fetch('lists');
    }

    lists视图(lists.html):

    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>Document</title>
    </head>
    <body>
    	<table border="1" cellspacing="0">
    	<a href="{:url('add')}">添加</a>
    		<tr>
    			<th>ID</th>
    			<th>姓名</th>
    			<th>年龄</th>
    		</tr>
                <!-- 循环出来数据 -->
    		{foreach $info as $v}
    		<tr>
    			<td>{$v.id}</td>
    			<td>{$v.name}</td>
    			<td>{$v.age}</td>
    		</tr>
    	</table>
    </body>
    </html>

     目录截图:

    数据表截图: 

    模型(model): 

    <?php  
    	namespace appackmodel;
    	use thinkModel;
    
    	class Yk extends Model{
    
    		
    	}
    
    ?>

       注:仅用于所有字段批量添加否则无法完成。

                                                                                                                                                                                                                                               ----and 

  • 相关阅读:
    MyBatis学习总结——MyBatis快速入门
    Java网络socket编程详解
    java中导出EXCEL表格
    利用反射将xml转换为List<Object>
    Java中将xml转为List<实体类>
    JavaWeb | 之 | 角色管理的表结构设计和原理
    fastjson把对象转化成json避免$ref
    JSON解析(DATE)对象数据
    jstl中<c:forEach>的用法
    请求转发与请求重定向的区别
  • 原文地址:https://www.cnblogs.com/zhumengyang/p/13346634.html
Copyright © 2020-2023  润新知