01-编写CMS注意事项

原文:01-编写CMS注意事项

1、将ThinkPHP核心文件放在项目目录,将下载的扩展包放在在ThinkPHP目录下的Extend文件夹中

2、设置整个项目的编码为utf-8

3、创建Public公共目录用于存放公用JS,CSS,Images,创建index.php

 1 <?php
 2 header("Content-type: text/html; charset=utf-8");
 3 //APP_NAME和APP_PATH分部用于定义项目名和项目目录,项目名通常就是指项目的目录名称。
 4 define('APP_NAME','Home');
 5 define('APP_PATH','./Home/');
 6  //开启调试模式,默认是关闭
 7 define('APP_DEBUG',true);
 8 //APP_NAME和APP_PATH分部用于定义项目名和项目目录,项目名通常就是指项目的目录名称。
 9 require './ThinkPHP/ThinkPHP.php';
10
11
12 ?>

admin.php

 1 <?php
 2
 3 header("Content-type: text/html; charset=utf-8");
 4 //APP_NAME和APP_PATH分部用于定义项目名和项目目录,项目名通常就是指项目的目录名称。
 5 define('APP_NAME','Home');
 6 define('APP_PATH','./Home/');
 7  //开启调试模式,默认是关闭
 8 define('APP_DEBUG',true);
 9 //APP_NAME和APP_PATH分部用于定义项目名和项目目录,项目名通常就是指项目的目录名称。
10 require './ThinkPHP/ThinkPHP.php';
11
12
13 ?>

4、公用的配置的config.inc.php

 1 <?php
 2 return array(
 3 //-----------数据库配置
 4     'DB_TYPE'=>'mysql',            //设置数据库类型
 5     'DB_HOST'=>'localhost',        //设置主机
 6     'DB_NAME'=>'thinkphp',        //设置数据库名
 7     'DB_USER'=>'root',            //设置用户名
 8     'DB_PWD'=>'',                //设置密码
 9     'DB_PORT'=>'3306',            //设置端口号
10     'DB_PREFIX'=>'tp_',            //设置表前缀
11  // 'DB_DSN'=>'mysql://root:@localhost:3306/thinkphp',  //使用DSN方式配置数据库信息,简化数据库配置
12 //-----------------end
13
14 //---开启页面Trace
15     'SHOW_PAGE_TRACE'=>TRUE,
16 //'配置项'=>'配置值'
17     'URL_PATHINFO_DEPR'=>'/', // 更改PATHINFO参数分隔符,默认是/
18 //开启URL不区分大小写
19     'URL_CASE_INSENSITIVE' =>true,
20 //修改左定界符 ,默认{
21     'TMPL_L_DELIM'=>'<{',
22 //修改右定界符,默认}
23     'TMPL_R_DELIM'=>'}>',
24 );
25
26 ?>

 配置前台config.php时,引入

1 <?php
2 $config=include './config.inc.php';
3 $confighome= array(
4     //'配置项'=>'配置值'
5     'USER_AUTH_ON'            =>        true,
6 );
7 return  array_merge($config,$confighome);
8 ?>

调试是否连接数据库成功

<?php
class IndexAction extends Action {
    public function index(){
        $m=M('User');
        var_dump($m->select());    //失败返回  bool(false)
        //$this->display();
    }
}

5、继承公共的控制器
将公用的字符集设为utf-8

1 <?php
2     class CommonAction extends Action{
3      //系统Action类提供了一个初始化方法_initialize接口,可以用于扩展需要,_initialize方法会在所有操作方法调用之前首先执行
4         function _initialize(){
5             header("Content-Type:text/html; charset=utf-8");
6         }
7     }
8
9 ?>

Index模块继承公共

1 <?php
2 // 本类由系统自动生成,仅供测试用途
3 class IndexAction extends CommonAction {
4     public function index(){
5         $m=M('Use');
6         var_dump($m->select());
7         //$this->display();
8     }
9 }

 

时间: 2024-08-30 09:58:15

01-编写CMS注意事项的相关文章

JavaScript文本框脚本编写的注意事项_javascript技巧

在HTML中,有两种方式来表现文本框: 一种是使用input元素的单行文本,另一种是使用textarea的多行文本框. 使用input方式,必须添加type,设置为"text". size特性,可以指定文本框内能够显示的字符数. value属性可以设置文本框的初始值. maxlength特性则是用于指定文本框内可以接受的最大字符数. textarea的初始值则必须放在开始和结束标签之内. cols是文本框字符行数: rows是文本框字符列数: 另外,不能在HTML中给textarea指

(07/01)明日上市公司重大事项公告最新快递

2010-07-02 星期五 停牌 (600601) 方正科技:配股期间停牌,连续停牌,停牌起始日:2010-07-02,恢复交易日:2010-07-09 新股网下配售股份上市日(估算) (002381) 双箭股份: 新股网下配售股份上市日:2010-07-02(预计),本次上市数量:4.0000 百万股,上市市场:深圳证券交易所,上市股份为网下机构投资者所持股份 (002382) 蓝帆股份: 新股网下配售股份上市日:2010-07-02(预计),本次上市数量:4.0000 百万股,上市市场:深

用NODE.JS中的流编写工具是要注意的事项_node.js

Node.js中的流十分强大,它对处理潜在的大文件提供了支持,也抽象了一些场景下的数据处理和传递.正因为它如此好用,所以在实战中我们常常基于它来编写一些工具 函数/库 ,但往往又由于自己对流的某些特性的疏忽,导致写出的 函数/库 在一些情况会达不到想要的效果,或者埋下一些隐藏的地雷.本文将会提供两个在编写基于流的工具时,私以为有些用的两个tips. 一,警惕EVENTEMITTER内存泄露 在一个可能被多次调用的函数中,如果需要给流添加事件监听器来执行某些操作.那么则需要警惕添加监听器而导致的内

一些LinuxC的小知识点(二)

一.read系统调用       系统调用read的作用是:从与文件描述符filedes相关联的文件里读入nbytes个字节的数据,并把它们放到数据区buf中.它返回实际读入的字节数.这可能会小于请求的字节数.如果read调用返回0,就表述未读入任何数据,已经达到了文件尾.同样,如果返回的是-1,就表示read调用出现了错误. #include <unistd> size_t read(int filedes,void *buf,size_t nbytes); 二.普通文件(file)和设备文

Windows 2000驱动程序的设计

本文介绍了Windows 2000 WDM驱动程序结构及其编写的注意事项,最后给出了一个简单的WDM驱动程序及客户端程序的源码,希望能对大家有所帮助. 1. 简介: Windows 2000原名Windows NT 5.0是继Windows NT 4.0的新一代操作系统,它不但继承了Windows NT 4.0的种种优点,而且在技术上又有了许多的突破,其中一项就是对驱动程序结构的变化,即引入了全新的WDM (Win32 Driver Model)的驱动程序构架.说是新技术,其实早在1997年Mi

Redhat Enterprise Linux 6 Update 4在z/VM 6.2上的快速网络安装方式

在z/VM上部署zLinux有多种方式,本文介绍了Redhat Enterprise Linux 6 Update 4在z/VM 6.2上一种快速的网络安装方式. 1 准备工作 1.1 基础要求 在阅读本文以下内容之前,您需要掌握基础的z/VM CP和CMS命令,请参阅参考资料[3],了解z/VM基本操作.本文假定您已经掌握z/VM基础操作. 1.2 需要的客户端 请准备以下客户端: 3270终端客户端. Linux系统上您可以使用x3270,Windows系统上您可以使用IBM Persona

如何滥用 Exchange Web Service API?

本文讲的是如何滥用 Exchange Web Service API?, 0x00 前言 一直以来,Outlook Web Access (OWA) 一直是一个为渗透测试人员产生攻击向量的源头.最常见的就是攻击者利用针对暴露在互联网的 OWA 网站进行爆破,以便能获取到有效的登录凭证.一旦攻击者获得了有效的登录凭证,他就可以通过一些使用单因子进行身份验证的网站访问目标的网络,例如,(Citrix, VPN, RDP)等. 在使用多个爆破工具之后,我发现有很多不足的地方,因此我决定编写我自己的 O

《HTML5+CSS3网页设计入门必读》——2.4 DOCTYPE:形式更简洁

2.4 DOCTYPE:形式更简洁 文档类型声明(Document Type Declaration)简称为doctype,一直用于指定文档所编写的标记类型. HTML 4.01的 doctype如下所示(»为自动换行标记): <!DOCTYPE HTML PUBLIC » "-//W3C//DTD HTML 4.01//EN" » "http://www.w3.org/TR/html4/strict.dtd"> XHTML 1.0 的doctype如下

DOCTYPE 探索 【已翻译100%】(1/2)

介绍 最近在我学习HTML5的时候,心里想到的第一个问题就是浏览器怎么会知道,我们编写的HTML是否兼容HTML v4.1或者HTML v5呢. 为了找到对相同查询的回复,我开始了我的探索,这里我想分享对此的一些了解. 研究这个东西的时候,我了解到所有这些都是由一个叫做 <!DOCTYPE> 的标签来控制的,它是大多数网页的最开头的一个标签,真正令我感觉惊奇的事情,则是因为我看到每一个web页面不管何时被某个IDE添加,都会自动添加上这个标签,而我也从未关心过这个标签,也从未想过要去研究研究它