6月16日 TP框架数据库的查询及添加

Posted D董小姐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6月16日 TP框架数据库的查询及添加相关的知识,希望对你有一定的参考价值。

MainController.class.php

function ShowAll()
    {
        //model:数据库中每张表对应一个模型
        //类名是表名,类里面的成员变量是列名
        //把一张表对应为一个类,其中一条数据对应一个对象
        
        //如果我们对该表的模型没有特殊操作,可以不用建立该模型
        
        //查询Info表
        //1.实例化Model
        /*$info = new \Home\Model\InfoModel;
        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 Home\Model;
use Think\Model;
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>

 

以上是关于6月16日 TP框架数据库的查询及添加的主要内容,如果未能解决你的问题,请参考以下文章

6月19 使用tp框架生成验证码及文件上传

6月16 ThinkPHP连接数据库及Model数据模型层--------查询及数据添加

TP 框架查询 添加练习

2019年 7月16日 Linq高级查询

10月16日下午CRUD操作

TP框架---thinkphp查询和添加数据