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