-
过滤非法字符: if(!get_magic_quotes_gpc()){ addslashes($str); }else{ $str;查看全部
-
入口文件改造: 1.统一入口文件为首的Url格式: 例如 ... index.php?controller=控制器&mothod=方法名 2.在入口文件里使用安全的方式接收传递来的控制器名和方法名。主要由以下步骤: (1)利用超全局变量$_GET[]来接收url里的参数。 (2)get_magic_quotes_gpc进行魔法函数判断,如果为true,说明已经含有转义功能,如果没有,则需要使用转义函数addslashes($str)将字符串转义 (3)设置控制器白名单和方法白名单。 (4)使用in_array函数判断参数是否在白名单里查看全部
-
MVC => Model View Control查看全部
-
MVC = >查看全部
-
function V($name){ require_once('/libs/View/'.$name.'View.class.php'); //eval('obj = new '.$name.'View();'); //eval方便但是不安全,可以用以下代替: $view = $name.'View'; $obj = new $view(); }查看全部
-
控制器的方法不允许有参数的 function M($name) { require_once('/libs/Model/'.$name.'Model.class.php'); //eval('$obj = new'.$name.'Model();'); $model = $name."Model"; $obj = new $Model(); return $obj; }查看全部
-
入口文件 实现 简单易用,实例化控制器 建立一个控制器调用函数C function C()//传入类和方法 <?php function C($name,$method)//传入控制器名字,和方法 { require_once('/libs/Controller/'.$name.'Controller.class.php'); //$testController = new testController(); //$testController -> show(); eval('$obj = new '.$name.'Controller():$obj->'.$method.'();');//eval 把字符串转化成可执行语句,此方法调用简单但不安全,可以下语句代替 $controller = $name.'Controller'; $obj = new $controller(); $obj -> $method; } ?>查看全部
-
单一入口指在一个WEB应用程序中,所有的请求都是指向一个脚本文件,例如我们经常用的都是index.php?XXX 目录规范查看全部
-
testView.class.php查看全部
-
testModel.class.php查看全部
-
testController.class.php查看全部
-
test.php include:返回一个警告 require:返回一个严重的错误。查看全部
-
MVC工作流程 1、浏览器 使用者对控制器发出指令; 2、控制器 控制器接收到指令,按照指令选取相应的模型; 3、模型 模型实例化之后,控制器取得模型中指定的属性或方法数据; 4、控制器 控制器调用视图类; 5、视图 类实例化之后,装载刚才模型中取到的数据,进行显示。 避免重复包含指定文件,建议使用require_once查看全部
-
MVC视图文件的命名规范testView.class.php testView.class.php <?php class testView{ function display($data){ echo $data; } }查看全部
-
模型文件 testModel.class.php <?php class testModel{ function get(){ return 'hello world'; } } ?>查看全部
举报
0/150
提交
取消