第九十九天上课 PHP TP框架 数据库查询和增加
在Model文件夹下创建模型,文件命名规则 : 表名Model.class.php
<?php
namespace Home\Model;
use Think\Model;
class yonghuModel extends Model
{
}
实例化数据库的三种方法
//调用Model文件夹下的模型
public function shujuku1()
{
$yonghu=new \Home\Model\yonghuModel; //实例化自己创建的Model,(注意路径书写完整)
var_dump($yonghu);
}
//D方法直接实例化
public function shujuku2()
{
$yonghu=D('yonghu'); //直接利用D方法,需要一个参数,数据库下的表名称
var_dump($yonghu);
}
//M方法直接实例化(造父类对象)
public function shujuku3()
{
$yonghu=M('yonghu'); //直接利用M方法,需要一个参数,数据库下的表名称
var_dump($yonghu);
}
查询数据库
//查询数据库
public function chaxun()
{
$yonghu=D('yonghu');
var_dump($yonghu->select()); //select查询方法,返回索引为小写的二维数组(只能放在连贯操作的最后面)
}
给数据库添加数据的三种方法
//造数组的方式添加
public function add1()
{
$mode=D("yonghu"); //实例化数据库yonghu表,(将表转化成类)
$attr=array //造数组,数组的索引和数据库列名一一对应
(
'zhanghao'=>001,
'mima'=>123,
'mingzi'=>'刘大',
'xingbie'=>'男',
'shengri'=>'1990-07-09',
'shijian'=>'2016-6-16 14:09:30',
'shengfen'=>'管理',
'zhuangtai'=>'已激活',
);
$mode->add($attr); //添加到数据库
}
//赋值类成员的方式添加
public function add2()
{
$mode=D('yonghu'); //实例化数据库yonghu表,(将表转化成类)
$mode->zhanghao='002'; //对类成员进行赋值,成员名与数据库列名一一对应
$mode->mima='123';
$mode->mingzi='小二';
$mode->xingbie='男';
$mpde->shengri='1992-09-09';
$mode->shijian='2016-6-16 14:09:31';
$mode->shengfen='用户';
$mode->zhuangtai='未激活';
$mode->add(); //添加到数据库
}
//自动收集表单成员数据的方式添加
public function add3()
{
$mode=D('yonghu'); //实例化数据库yonghu表,(将表转化成类)
$mode->create(); //自动收集表单 表单的name和数据库的列名必须一一对应
$z=$mode->add(); //添加到数据库
if($z)
{
$this->success("添加数据成功!","Add",3); //添加成功时提示
}
else
{
$this->error("添加失败!","Add",5); //添加失败时提示
}
}
连接数据库时需要配置的配置文件内容
<?php
return array
(
//'配置项'=>'配置值'
'TMPL_L_DELIM' => '<{',
'TMPL_R_DELIM' => '}>',
'URL_MODEL'=>2,
'SHOW_PAGE_TRACE' => TRUE,
/* 数据库设置 */
'DB_TYPE' => 'mysql', // 数据库类型
'DB_HOST' => 'localhost', // 服务器地址
'DB_NAME' => 'index', // 数据库名
'DB_USER' => 'root', // 用户名
'DB_PWD' => '', // 密码
'DB_PORT' => '', // 端口
'DB_PREFIX' => '', // 数据库表前缀
'DB_PARAMS' => array(), // 数据库连接参数
'DB_DEBUG' => TRUE, // 数据库调试模式 开启后可以记录SQL日志
'DB_FIELDS_CACHE' => true, // 启用字段缓存
'DB_CHARSET' => 'utf8', // 数据库编码默认采用utf8
'DB_DEPLOY_TYPE' => 0, // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
'DB_RW_SEPARATE' => false, // 数据库读写是否分离 主从式有效
'DB_MASTER_NUM' => 1, // 读写分离后 主服务器数量
'DB_SLAVE_NO' => '', // 指定从服务器序号
);
error方法屏蔽系统报错的办法
->将TP\ThinkPHP\Library\Think\Db文件夹下的Driver.class.php文件第237行 “ $this->error(); ” 注释掉
第九十九天上课 PHP TP框架 数据库查询和增加的更多相关文章
- 第 一 百 天上课 PHP TP框架 数据库修改和删除
修改的三种方式 //造数组的方式修改 public function xiugai1() { $db=D('yonghu'); $attr=array ( 'zhanghao'=>001, // ...
- 第一零二天上课 PHP TP框架 引入文件路径问题和调用验证码的方式
外部文件引入到视图模板的方式 1,将外部文件放在Public文件夹下,用load标签引入 2,在模板出书写引入代码(方法有很多,只有以下方法不容易出问题) <load h ...
- 第九十七天请假 PHP TP框架 MVC模式
MVC : M->Model 模型(数据层) V->View 视图(视图层) C->Controller 控制器(逻辑层) M : 操作数据(连接数据 ...
- tp框架数据查询,增删改
select()是数据模型的一个指定方法,可以获得数据表的数据信息 返回一个二维数组信息,当前数据表的全部数据信息 $obj = D(); 创建对象 $obj -> select(); 查询 ...
- tp框架之查询
//数据访问 //造模型对象 $nation = D("Nation"); //查询 //$a = $nat ...
- TP框架数据库操作(增删改)
首先选择一张表,对其进行操作: 对数据库操作之前首先要创建模型: $n = M("account"); 数据库添加数据: 1.使用数组: 1.使用数组 $arr = array(& ...
- 模型层TP框架数据库的操作
在shop入口的文件下的HOME文件夹中使用模型层 第一步修改配置模块把数据库的各种链接做好,打开HOME中的conf文件夹中的config.php,找到Thinkphp文件加下的conf文件打开co ...
- 第一零五天上课 PHP TP框架下分页
控制器代码(TestController.class.php) <?php namespace Home\Controller; use Home\Controller\EmptyControl ...
- 第一零四天上课 PHP TP框架下的文件上传
控制器代码(TestController.class.php) <?php namespace Home\Controller; use Home\Controller\EmptyControl ...
随机推荐
- source insight shift+tab问题
之前用的好好的,shift+tab功能为向左缩进(即tab的相反功能),但是突然就有问题了:现象为只是光标向左移动,但文本不动. 解决方法: 1 使用快捷键f9 2 重新定义快捷键,把shift+ta ...
- cut - 小巧的文本截取工具
简介 cut命令是Unix下的一个命令行程序.cut命令是以行为单位来处理的.cut命令处理的是标准输入,所以可以结合管道来进行文本的处理. 命令格式 cut option… [file]… cut命 ...
- Angularjs中的promise
promise 是一种用异步方式处理值的方法,promise是对象,代表了一个函数最终可能的返回值或抛出的异常.在与远程对象打交道非常有用,可以把它们看成一个远程对象的代理. 要在Angular中创建 ...
- python unicode字节串转成中文问题
如题,其实我的问题很简单,就是在写爬虫的时候拿到网页的信息包含类似“\u65b0\u6d6a\u5fae\u535a\u6ce8\u518c”的字符串,实际上这是unicode的中文编码,对应的中文为 ...
- PHP 数组 foreach引用导致的bug
<?php $arr = array('a', 'b', 'c'); foreach($arr as &$v) {} foreach($arr as $v) {} var_dump($a ...
- android四大组件之ContentProvider(二)
ContentProvider学习笔记 上一章节我们编写了自定义的一个StudentProvider,他提供了两种供外界访问数据的方式,content://come.demo.sqlite.stude ...
- [Linux] VirtualBox - 主机与虚拟机互通 - CentOS
使用VirtualBox的主机与虚拟机相互通信方法: (使用VirtualBox不要使用绿色版的,因为绿色版的没有安装虚拟网卡驱动,所以主机与虚拟机是不能相互通信的,切记) 1.设置已经安装好的操作系 ...
- yii2 使用twig 模板引擎
yii2 默认使用PHP 和html 混合的方式来写视图层,但我个人还是喜欢纯模板语言的方式.而且已经非常习惯使用twig的语法,最近想使用yii2进行开发,所以还是选择使用twig视图引擎. git ...
- Oracle存储过程 输出参数赋值异常:“Oracle.DataAccess.Types.OracleString”的类型初始值设定项引发异常。
场景: 写了一个有返回参数的存储过程,在个另开发人员机器上都正常.其它机器报如题错误.让人郁闷的是,所有调用方都是客户端,根本不存在网上众贴所说的版本不一致问题. 分析: 虽然网上的帖子没有根本解决问 ...
- BP(back propagation)反向传播
转自:http://www.zhihu.com/question/27239198/answer/89853077 机器学习可以看做是数理统计的一个应用,在数理统计中一个常见的任务就是拟合,也就是给定 ...