1、引入公共的常用的文件
使用 标签,head为html文件收到名字(不填路径,默认当前文件下)
2、引入静态资源文件
可以用__PUBLIC__标签,路径只想Public目录(静态资源文件放置目录)
还可以使用在入口文件定义常量名引入。如:{$Think.const.AD_IMG_URL}使用$Think.const标签
3、在模板文件中的跳转
可以用href="{:U('Index/index',array('id' => $id['']))}" 使用{:U()}方法实现跳转还可以传递参数
还可以使用__CONTROLLER__/方式跳转,也可以传递参数
4、在模板文件中发送数据请求
$LogisticsTypes = D('LogisticsType')->getSelectLogisticsType()(因为都在一个文件下,模板文件和控制器)。不建议使用。因为强调php和html分离
5、平常的html页面的跳转以及点击事件
发送的ajax请求,常用的js代码都单独提取出来,有利于再次利用
例如:
html中的代码
{$LogisticsType.typeName}
提取出来的js代码
$('#logisticsType .J_typeId').on('click', function () {
var id = $(this).attr('attr-id');/获取当前对象的id值
var url = '/dswiliu/index.php?c=index';//跳转的url地址(绝对地址)
window.location.href = url + '&typeId=' + id;//js原生的跳转
})
6、model模型
在Common中的Model模型是共用的,平常在不同的模块对应不同的model方法(如:Home和Admin)
7、手机端页面
现在做手机端页面一般都下拉加载功能,代码已经整理了。步骤:先出现总的页面,之后发送ajax请求去加载数据,回调js显示在页面
8、tp框架混合查询(以及常用数据查询)
1、Thinkphp复合where的查询方法:
例如:
$where['name'] = array('like','%thinkphp%');
$where['title'] = array('like','%thinkphp%');
$where['_logic'] = 'or';//用or连接
$map['_complex'] = $where;//复合起来
$map['id'] = array('gt',1);//查询的条件
查询条件是
( id > 1) AND ( ( name like '%thinkphp%') OR ( title like '%thinkphp%'))
常用的一些操作:
$data['surplus'] = array('neq',0);
下面两个是排序:
$order['releaseDateTime']='DESC';
$order['Id']='DESC';
3、实例化一个模型之前:先进行下面的操作(方便后续的操作)
private $_db = '';
public function __construct()
{
$this->_db = M('logistics'); //实例化表
}
后面的方法直接使用$this->_db
4、对循环出来的值做一些修改及赋值操作
foreach($Logistics as $key=>$value){
if($dsUser && is_array($dsUser) && $dsUser['mobileNo']) {
$userCenter = D('Login')->getUserByLogin($dsUser['mobileNo']);
if($value['surplus'] > $userCenter['tonnage']){
//注意要使用下面的方式,而不是使用$value['tonnage'],不能给值赋值
$Logistics[$key]['tonnage'] = $userCenter['tonnage'];
}else{
$Logistics[$key]['tonnage'] = $value['surplus'];
}
//分页(控制器中)
$page = $_REQUEST['p'] ? $_REQUEST['p'] : 1;
$pageSize = $_REQUEST['pageSize'] ? $_REQUEST['pageSize'] : 5;
模型中:
$offset = ($page-1)*$pageSize;
9、Js的一些使用:
var data = $("#singcms-form").serializeArray(); 获取id为singcms-form的form表单的值。注意form格式为””> .不需要填写method还有submit
//form表单的提交(jquery表单提交)
$("form").submit(function() {
console.log($(this).serializeArray());
return false;
});