01-编写CMS注意事项
原文:01-编写CMS注意事项
1、将ThinkPHP核心文件放在项目目录,将下载的扩展包放在在ThinkPHP目录下的Extend文件夹中
2、设置整个项目的编码为utf-8
3、创建Public公共目录用于存放公用JS,CSS,Images,创建index.php
<?php
header("Content-type: text/html; charset=utf-8");
//APP_NAME和APP_PATH分部用于定义项目名和项目目录,项目名通常就是指项目的目录名称。
define('APP_NAME','Home');
define('APP_PATH','./Home/');
//开启调试模式,默认是关闭
define('APP_DEBUG',true);
//APP_NAME和APP_PATH分部用于定义项目名和项目目录,项目名通常就是指项目的目录名称。
require './ThinkPHP/ThinkPHP.php'; ?>
admin.php
<?php
header("Content-type: text/html; charset=utf-8");
//APP_NAME和APP_PATH分部用于定义项目名和项目目录,项目名通常就是指项目的目录名称。
define('APP_NAME','Home');
define('APP_PATH','./Home/');
//开启调试模式,默认是关闭
define('APP_DEBUG',true);
//APP_NAME和APP_PATH分部用于定义项目名和项目目录,项目名通常就是指项目的目录名称。
require './ThinkPHP/ThinkPHP.php';
?>
4、公用的配置的config.inc.php
<?php
return array(
//-----------数据库配置
'DB_TYPE'=>'mysql', //设置数据库类型
'DB_HOST'=>'localhost', //设置主机
'DB_NAME'=>'thinkphp', //设置数据库名
'DB_USER'=>'root', //设置用户名
'DB_PWD'=>'', //设置密码
'DB_PORT'=>'3306', //设置端口号
'DB_PREFIX'=>'tp_', //设置表前缀
// 'DB_DSN'=>'mysql://root:@localhost:3306/thinkphp', //使用DSN方式配置数据库信息,简化数据库配置
//-----------------end //---开启页面Trace
'SHOW_PAGE_TRACE'=>TRUE,
//'配置项'=>'配置值'
'URL_PATHINFO_DEPR'=>'/', // 更改PATHINFO参数分隔符,默认是/
//开启URL不区分大小写
'URL_CASE_INSENSITIVE' =>true,
//修改左定界符 ,默认{
'TMPL_L_DELIM'=>'<{',
//修改右定界符,默认}
'TMPL_R_DELIM'=>'}>',
); ?>
配置前台config.php时,引入
<?php
$config=include './config.inc.php';
$confighome= array(
//'配置项'=>'配置值'
'USER_AUTH_ON' => true,
);
return array_merge($config,$confighome);
?>
调试是否连接数据库成功
<?php
class IndexAction extends Action {
public function index(){
$m=M('User');
var_dump($m->select()); //失败返回 bool(false)
//$this->display();
}
}
5、继承公共的控制器
将公用的字符集设为utf-8
<?php
class CommonAction extends Action{
//系统Action类提供了一个初始化方法_initialize接口,可以用于扩展需要,_initialize方法会在所有操作方法调用之前首先执行
function _initialize(){
header("Content-Type:text/html; charset=utf-8");
}
} ?>
Index模块继承公共
<?php
// 本类由系统自动生成,仅供测试用途
class IndexAction extends CommonAction {
public function index(){
$m=M('Use');
var_dump($m->select());
//$this->display();
}
}
01-编写CMS注意事项的更多相关文章
- 79)PHP,session函数编写的注意事项
(1)先执行 session_set_save_handler() 在session_start(). (2)那么开启session_start(),有两种方法,一个就是session_start ...
- Python编写相关注意事项
1.# -*- coding: utf-8 -*-代码首部添加这个,不然会报Non_ASCII charater错误 python闭包:实际应用场景1.保持闭包运行完后的环境: 2.根据外部作用域的局 ...
- Dockerfile编写的注意事项
一.Dockerfile合理分层 Dockerfile的写法不合理,有时候会导致镜像膨胀,由于Docker是分层设计,而在Dockerfile中,每一条指令都拥有自己的context,而执行到下一条指 ...
- PHP扩展开发--01.编写一个helloWorld扩展
为什么要用C扩展 C是静态编译的,执行效率比PHP代码高很多.同样的运算代码,使用C来开发,性能会比PHP要提升数百倍. 另外C扩展是在进程启动时加载的,PHP代码只能操作Request生命周期的数据 ...
- 编写高性能SQL的注意事项
在数据库部分,对数据库应用性能改进来说,需要重点关注应用程序,在查询设计和索引策略等方面进行优化,甚至可以把数据库查询效率提高数百倍,在其他方面的优化努力,其效果就没有这么明显(见下图).本文重点描述 ...
- [自制简单操作系统] 1、从0-1到汇编再到c语言的奥秘
目录: 1.用0-1编写最简单的操作系统 2.用汇编改写上面0-1程序 2.1 只用DB的汇编改写版 2.2 加入RESB汇编的改写版 2.3 进一步使用汇编替换0-1文件 2.4 核心程序也用 ...
- MVC模式网站编写经验总结
单个网站使用MVC架构模式经验总结,包含具体网站包分类.包内类的编写.注意事项等方面.本人认为,按照如下包分类及编写方法,已经满足一个简单普通网站(主要针对java)的编写需求. MVC主要层级 数据 ...
- Jmeter脚本录制方法(二)——手工编写脚本(jmeter与fiddler结合使用)
jmeter脚本录制方法可以分三种,前几天写的一篇文章中,已介绍了前两种,今天来说下第三种,手工编写脚本,建议使用这一种方法,虽然写的过程有点繁琐,但调试脚本比前两者方式都要便捷. 首先来看下三种方式 ...
- Jmeter脚本录制方法(二)手工编写脚本(jmeter与fiddler结合使用)
jmeter脚本录制方法可以分三种,前几天写的一篇文章中,已介绍了前两种,今天来说下第三种,手工编写脚本,建议使用这一种方法,虽然写的过程有点繁琐,但调试脚本比前两者方式都要便捷. 首先来看下三种方式 ...
随机推荐
- boost 分析命令行参数
#include <boost/program_options.hpp> #include <iostream> #include <vector> using n ...
- USACO 2005 January Gold The Wedding Juicer
题目 题目链接,我只在poj上找到了题目,usaco居然上不去. 大意就是说有一些\(1\times 1\times 1\)的小方块堆在一起,问最多能装多少水. 我们在一次测试中出了这题,由于我写水题 ...
- 初探 FFT/DFT
有用的学习链接&书籍 傅立叶变化-维基百科 离散傅立叶变化-维基百科·长整数与多项式乘法 维基百科看英文的更多内容&有趣的图 快速傅立叶变化-百度百科,注意其中的图! 组合数学(第4版 ...
- django-cookieless 0.7 : Python Package Index
django-cookieless 0.7 : Python Package Index django-cookieless 0.7 Download django-cookieless-0.7.ta ...
- C# c++ 传递函数指针
C#和c++之间相互传递函数指针 在C++和C#之中都有很多callback method,可以相互调用吗,怎么传递,是我表弟的问题. 1.定义c++ dll ,导出方法 // sort.cpp : ...
- Eclipse中使用版本控制----Git
之前在做软件开发的过程中使用的版本控制软件大多是cvs,svn等等,这些都属于cvcs,及中央版本控制系统,其特点是存在一个中央库,开发者首先从中央库中下载代码,编辑,然后提交.很明显的一个特点就是使 ...
- ORACLE11.2.0 SQLPLUS 报 error while loading shared libraries
相应的环境平台: OS: Linux TEST11G 2.6.18-8.el5 #1 SMP Fri Jan 26 14:15:21 EST 2007 i686 i686 i386 GNU/Linux ...
- Swift - 制作一个录音机(声音的录制与播放)
1,技术介绍 (1)AVFoundation.framework框架提供了AVAudioRecorder类.它可以实现录音功能. (2)而使用该框架的AVAudioPlayer类,可以实现声音的播放. ...
- QSplashScreen无法背景透明的解决办法
setWindowFlags(Qt::WindowStaysOnTopHint | Qt::SplashScreen | Qt::FramelessWindowHint); setAttribute( ...
- 可执行程序的入口点在那里?(强化概念:程序真正的入口是mainCRTstartup)
今天终于有时间来研究一下一个很大很大的工程编译成一个exe和若干dll后,程序是如果执行它的第一条指令的?操作系统以什么规则来找到应该执行的第一条指令(或说如何找到第一个入口函数的)? 我们以前写wi ...