ECSHOP 源码分析(index.php)

作者在 2006-12-06 04:14:00 发布以下内容

<?php
/***********************************************
define -- Defines a named constant
定义常量
bool define ( string name, mixed value [, bool case_insensitive])
参数说明
name :常量名
value:常量值
case_insensitive:大小写区分 true 为不区分,默认为false
例:
<?php
define("CONSTANT", "Hello world.");
echo CONSTANT; // outputs "Hello world."
echo Constant; // outputs "Constant" and issues a notice.

define("GREETING", "Hello you.", true);
echo GREETING; // outputs "Hello you."
echo Greeting; // outputs "Hello you."

?>
******************************************/
define('IN_ECS', true);  //定义一个常量IN_ECS 值为true

/**************************************
require_once()
require_once() 语句在脚本执行期间包括并运行指定文件。此行为和 require() 语句类似,
唯一区别是如果该文件中的代码已经被包括了,则不会再次包括。
require_once() 在 Windows 下不区分大小写

***************************************/
require_once('includes/init.php');

/***************************
常量DEBUG_MODE是在文件init.php中定义的
****************************/
if (!DEBUG_MODE)
{

/***************************************
Smarty是一个php模板引擎.
更准确的说,它分开了逻辑程序和外在的内容,提供了一种易于管理的方法
可以描述为应用程序员和美工扮演了不同的角色,因为在大多数情况下 ,他们不可能是同一个人.
例如,你正在创建一个用于浏览新闻的网页,新闻标题,标签栏,作者和内容等都是内容要素,他们并不包含应该怎样去呈现.
在Smarty的程序里,这些被忽略了.模板设计者们编辑模板,组合使用html标签和模板标签去格式化这些要素的输出(html表
格,背景色,字体大小,样式表,等等).
有一天程序员想要改变文章检索的方式(也就是程序逻辑的改变).这个改变不影响模板设计者,内容仍将准确的输出到模板.
同样的,哪天美工吃多了想要完全重做界面,也不会影响到程序逻辑.
因此,程序员可以改变逻辑而不需要重新构建模板,模板设计者可以改变模板而不影响到逻辑.

在init.php中
require_once(ROOT_PATH."includes/smarty/Smarty.class.php");
****************************************/
    $smarty->caching = TRUE;
}

/*******************************************
$_GET变量是通过get方法从表单中获取“值”的
$_GET变量是一个包含名称[name]何值[value]的数组(这些名称和值是通过HTTP GET方法发送的,且都可以利用)。
$_GET变量使用“method=get”来获取表单信息。通过GET方法发送的信息是可见的(它将显示在浏览器的地址栏里),并且
它有长度限制(信息的总长度不能超过100个字符[character])。

********************************************/

/* Shopex系统地址转换 */
if(!empty($_GET["gOo"]))
{
 /* 商品分类。*/
 if(!empty($_GET["gcat"]))
 {
  $Loaction = "category.php?id=$_GET[gcat]";
 }
 /* 文章分类。*/
 elseif(!empty($_GET["acat"]))
 {
  $Loaction = "article_cat.php?id=$_GET[acat]";
 }
 /* 商品详情。*/
 elseif(!empty($_GET["goodsid"]))
 {
  $Loaction = "goods.php?id=$_GET[goodsid]";
 }
 /* 文章详情。*/
 elseif(!empty($_GET["articleid"]))
 {
  $Loaction = "article.php?id=$_GET[articleid]";
 }
 if(!empty($Loaction))
 {
 /***************************************************
 header的用法
    标头 (header) 是服务器以 HTTP 协议传 HTML 资料到浏览器前所送出的字串,在标头
    与 HTML 文件之间尚需空一行分隔。有关 HTTP 的详细说明,可以参 RFC 2068 官方文件
    (
http://www.w3.org/Protocols/rfc2068/rfc2068)。在 PHP 中送回 HTML 资料前,需先
    传完所有的标头。

php | 阅读 2075 次
文章评论,共0条
游客请输入验证码