tp框架总结(四)
一 ajax的返回
调用实例:
$this->ajaxReturn(返回数据,提示信息,操作状态);
$this->ajaxReturn(返回数据,‘json’);
js:
<script>
$("#btn").click(function(){
$.post('__URL__/test',function(data){
str = data.data+data.info;
if(data.status){
alert(str);
}else{
...........
}
});
})
</script>
php:
public function test(){
$this->ajaxReturn('user1','插入成功',1);
}
二、添加模板替换:
"TMPL_PARSE_STRING" =>array(
'__UPLOAD__' =>__ROOT__.'/Public/uploads',
);
三、模型定义:
当我们定义一个UserModel类的时候,默认访问的是User表
如果我们想在此模型中访问cate表 那么我们就要定义为
protected $tableName = "cate";
如果我们想访问别的前缀和当前前缀不一样的表那么我们就定义为:
protected $trueTableName = "top_cate";
除了数据表的定义外 还可以对数据库进行定义
protected $dbName ='top';
1.实例化基础模型类
$user = new Model("User"); //或者使用M()快捷方法实例化 等效于 $User = M('User');
2.实例化其他公共模型类
$User = new commonModel('User','think_','db_config');
$User = M('CommonModel:User','think_','db_config');
其中第一个参数是模型名称,第二个参数用于设置数据表的前缀 第三个参数用于设置当前 使用的数据库连接信息,留空则取当前项目配置的数据库连接信息
3.实例化用户自定义的MOdel类
$User = D("User");
4.实例化空模型
$Model = new Model(); //$Model = M();
$model ->query("SELECT * FROM think_user WHERE status=1");
空模型用于使用原声的sql查询 也可以跨项目调用
四、字段定义
1.如果想显示获取当前数据表的字段信息的话
$fields = $user ->getDbFields();
五、数据主键
获取当前数据对象的主键名称
$pk = $Model ->getPk();
六、属性访问
$User = M('User');
//获取用户的数据
$User ->find(1);
//获取属性的值
$User->name;
//设置属性的值
$User->name = "ThinkPHP";
七、跨库操作
class UserModel extends Model{
protected $dbName = "user";
}
$User = D('User');
echo $User->getLastSql();
//输出的sql语句为 select * from user.think_user;
如果跨库操作时访问的表前缀不一样 设置表的前缀
protected $tablePrefix = "other_";
八、切换数据库
如果项目配置中定义了其他的数据库连接信息
我们就可以直接在db方法中调用配置进行连接了
//数据库配置1
- //数据库配置1
- 'DB_CONFIG1' = array(
- 'db_type' => 'mysql',
- 'db_user' => 'root',
- 'db_pwd' => '1234',
- 'db_host' => 'localhost',
- 'db_port' => '3306',
- 'db_name' => 'thinkphp'
- ),
- //数据库配置2
- 'DB_CONFIG2' => 'mysql://root:1234@localhost:3306/thinkphp';
$this->db(1,"DB_CONGIG1")->query(sql语句);
如果切换数据库之后,数据表和当前不一致的话我们可以使用table方法指定要操作的数据表
$this->db(1)->table("top_user")->find();
九、分布式数据库
十、创建数据
1.使用create()方法创建数据对象
$user = M('user');
$user->create();//根据表单提交的post数据创建数据对象
$user->add();// 把创建的数据对象写入数据库
2.使用data()方法创建对象
$data['name'] = "name";
$data['email'] = "403384070@qq.com";
$user->data($data)->add();
十一、系统安全设置
http://www.thinkphp.cn/info/184.html
十二、表单安全验证
最新文章
- netmon,messageanalyzer
- Java中的代理模式
- arch框架人员、组织说明
- 使用Java编写一个简单的Web的监控系统cpu利用率,cpu温度,总内存大小
- Centos下yum配置lnmp环境
- Android 开发之旅:深入分析布局文件&;又是“Hello World!”
- ECSHOP购物流程收货人信息详细地址显示省市区
- Mongodb数据更新命令
- UVA10054 The Necklace
- poj 2305(指定进制,大数取模)
- 阿里云服务器linux(centos)常用命令
- C#Windows的HelloWorld
- MyEclipse 修改项目字符集
- Windows之MySQL安装教程
- Unity shader之ColorMask
- mysql5.5.25 中文问题 my.ini没有及配置问题 修改默认编码方式
- WIN10下安装USB转串口驱动出现“文件的哈希值不在指定的目录”的解决办法
- SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)
- EditText 限制输入,自定义样式,监听输入的字符,自动换行
- Mongo如何在多个字段中查询某个关键字?