zoukankan      html  css  js  c++  java
  • 6月16日 TP框架数据库的查询及添加

    MainController.class.php:

    function ShowAll()
        {
            //model:数据库中每张表对应一个模型
            //类名是表名,类里面的成员变量是列名
            //把一张表对应为一个类,其中一条数据对应一个对象
            
            //如果我们对该表的模型没有特殊操作,可以不用建立该模型
            
            //查询Info表
            //1.实例化Model
            /*$info = new HomeModelInfoModel;
            var_dump($info);*/
            
            //2.D方法
            /*$info = D("Info");
            var_dump($info);*/
            
            //3.M方法,父类对象,传参数
            $car = M("Car");
            //var_dump($info);
            
            //var_dump($car->select());//返回所有数据的二维数组
            
            //$attr = $car->where("brand='b003'")->select();
            
            //$attr = $car->table("Nation")->select();//table方法可以切换操作表
            
            //$attr = $car->field("Name")->select();//field可指定查询的字段
            
            //$attr = $car->order("oil desc")->select();//排序
            
            //$attr = $car->limit(2,2)->select();//分页查询,如果一个参数n的话就是取n个
            //$attr = $car->page(3,2)->select();//取第n页的几个数据
            
            //$attr = $car->field("Brand,count(*)")->group("brand")->select();//分组
            
            //$attr = $car->join("Brand on Car.Brand=Brand.Brand_Code")->select();//join on 将两个表联合起来
            
            //$attr = $car->distinct(true)->field("oil")->select();//去重,true实现去重,false失效
            
            //$attr = $car->find("c001");//根据主键取一条数据,不写主键值默认返回第一条
            //$attr = $car->select("c001");//根据主键值查询,返回二维数组,可以查询多条
            /*$attr = $car->select();
            $this->assign("shuzu",$attr);
            $this->display();*/
            $attr = $car->count();//聚合函数,放在最后 max,最大值;avg,sum,min
            echo attr;
                    
        }
    
    
    
    //数据添加
        function Add()
        {
            if(empty($_POST))
            {
                $this->display();
            }
            else
            {
            
            //1.要添加的数组,必须是关联数组,key必须是字段名称
            $model = D("Info");
            /*$attr = array(
            'Code'=>'p007',
            'Name'=>'李丽',
            'Sex'=>true,
            'Nation'=>'n002',
            'Birthday'=>'1993-5-8'
            );*/
            
            //赋值
            /*$attr["Code"] = "p006";
            $attr["Name"] = "皎皎";
            $attr["Sex"] = false;
            $attr["Nation"] = "p001";
            $attr["Birthday"] = "1992-4-3";*/
            
            //$model->add($attr);//添加数据的方法,需要参数,该参数是一个数组
            
            //2.AR方式
            //1.连接类  2.实体类  3.数据访问类
            /*$model->Code = "p005";
            $model->Name = "芳华";
            $model->Sex = true;
            $model->Nation = "n003";
            $model->Birthday = "1995-3-4";
            
            $model->add();*/
            
            
            //3.自动收集表单,创建数据
            $model->create();
            $model->Sex = $_POST["Sex"]=="男"?true:false;
            $z = $model->add();
            if($z)
            {
                $this->succss("添加数据成功","Add",5);//提示添加数据成功,5秒后跳转Add页面
            }
            else
            {
                $this->error("添加失败","Add",3);
            }
            
            
            }
            
        
        
        }

    InfoModel.class.php:

    <?php
    namespace HomeModel;
    use ThinkModel;
    class InfoModel extends Model
    {
    }

    ShowAll.html:

    <body>
    <h1>汽车表</h1>
    <table width="100%" cellpadding="0" cellspacing="0" border="1">
    <tr>
        <td>代号</td>
        <td>名称</td>
        <td>系列</td>
        <td>上市时间</td>
        <td>油耗</td>
        <td>功率</td>
    </tr>
    <foreach name="shuzu" item="v">
    <tr>
        <td><{$v.code}></td>
        <td><{$v.name}></td>
        <td><{$v.brand}></td>
        <td><{$v.time}></td>
        <td><{$v.oil}></td>
        <td><{$v.puwer}></td>
    </tr>
    </foreach>
    </table>
    </body>

    Add.html:

    <body>
    <form action="__ACTION__" method="post">
    <div>代号:<input type="text" name="Code" /></div>
    <div>姓名:<input type="text" name="Name" /></div>
    <div>性别:<input type="text" name="Sex" /></div>
    <div>民族:<input type="text" name="Nation" /></div>
    <div>生日:<input type="text" name="Birthday" /></div>
    <input type="submit" value="提交" />
    </form>
    </body>
  • 相关阅读:
    大牛思考方式
    web面试题大全
    github上最全的资源教程-前端涉及的所有知识体系
    java switch语句注意的事项
    Lucene Payload 的研究与应用
    hive array、map、struct使用
    黑马程序员--正则表达式
    [置顶] 读源码练内功(一):guava之eventbus
    自定义Java Annotations实例以及用Java Reflection来解析自定义的Annotation
    Solr之NamedList 简单介绍与实例解析
  • 原文地址:https://www.cnblogs.com/dongqiaozhi/p/5592298.html
Copyright © 2011-2022 走看看