1. [文件] class.Dispatcher.php ~ 967B     下载(9)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?php
session_start();
require_once('class.Handler_Event.php');
header("Content-type:text/html; charset=utf-8");
 
class Dispatcher{
    private $handle;
     
    function __construct($event_handle){
        $this->handle=$event_handle;
    }
     
    function handle_the_event(){
        $name="handler_$this->handle";
        if(class_exists("$name")){
            $handler_obj=new $name($this->handle);
            $response=$handler_obj->secure_handler();
            return $response;
        }else{
            echo "I can't handle this!";
        }
    }
}
?>
<html>
<head><title>Secure,Event Driven Record Viewer!</title></head>
 
<body>
<form action="<? echo $_SERVER['PHP_SELF'] ?>" method="post">
   <input type="submit" name="event" value="View">
   <input type="submit" name="event" value="Edit">
</form>
</body>
</html>
<?php
function handle(){
    $event=$_POST['event'];
    $do=new Dispatcher($event);
    $do->handle_the_event();
}
 
$_SESSION['name']="Wangzy";
 
if(isset($_POST['event'])) handle();
?>

2. [文件] class.Handler_Event.php ~ 1KB     下载(6)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
//Event parent
abstract class Event_Handler{
    function dbconn(){
        $link_id=mysql_connect("localhost","root","root");
        mysql_select_db("mytest",$link_id);
        mysql_query("set names utf8",$link_id);
        return $link_id;
    }
     
    abstract function handled_event();
    abstract function secure_handler();
}
 
//View Event
class Handler_View extends Event_Handler{
    private $handle;
     
    function __construct($event_handle){
        $this->handle=$event_handle;
    }
     
    function handled_event(){
        echo "The event, $this->handle, is now handled.<br>
        It is ,I promise!<br><br>
        Your records are as follows:<br><br>";
         
        $id=parent::dbconn();
        $result=mysql_query("select * from table01",$id);
        while($row=mysql_fetch_array($result)){
            echo "Numbers:".$row['number']."\tName:".$row['name']."<br>";
        }
    }
     
    function secure_handler(){
        if($_SESSION['name']=="Wangzy"){
            $this->handled_event();
        }else{
            echo "Sorry {$_SESSION['name']} you are not authorized!";
        }
    }
}
 
//Edit Event
class Handler_Edit extends Event_Handler{
    private $handle;
     
    function __construct($event_handle){
        $this->handle=$event_handle;
    }
     
    function handled_event(){
        echo "This is event $this->handle, which is now handled -no kidding!<br>";
    }
     
    function secure_handler(){
        $this->handled_event();
    }
}

最新文章

  1. 优化MySchool数据库设计
  2. python 学习 : 一个简单的秒表
  3. VS安装及单元测试
  4. 如何在Visual Studio中开发自己的代码生成器插件
  5. php ceil() 函数向上舍入为最接近的整数。
  6. Linux多节点互信配置
  7. meta-analysis 到底是什么个意思类?
  8. mysql日志问题定位实用命令
  9. Popular Cows(codevs 2186)
  10. [转]Compact Normal Storage for Small G-Buffers
  11. Eclipse 浏览文件插件 EasyExplorer 和 OpenExplorer
  12. 梦游前端,JavaScript兼容性
  13. Python装饰器,json,pickle
  14. PTA天梯 L3-007 天梯地图
  15. B1018. 锤子剪刀布
  16. filter、map、sorted和reduce函数
  17. 2018年Android的保活方案效果统计
  18. [ZJOI2006]皇帝的烦恼
  19. CSDN-markdown编辑器语法——字体、字号与颜色
  20. struct termios结构体详解

热门文章

  1. HDU 1312 Red and Black (DFS)
  2. 数学#素数判定Miller_Rabin+大数因数分解Pollard_rho算法 POJ 1811&amp;2429
  3. HDU 2509 Be the Winner(取火柴博弈2)
  4. CF #368 div2
  5. Llinux环境下编译并使用OpenCV
  6. maven入门(下)
  7. 【CRC校验】学习笔记
  8. WebService使用入门(包括发布服务,调用服务)
  9. Footer固定在页面底部(CSS)
  10. android开发技巧