事件驱动 php,PHP 事件驱动程序

1.class.Dispatcher.php<?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!";

}

}

}

?>

Secure,Event Driven Record Viewer!

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<?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.

It is ,I promise!

Your records are as follows:
";

$id=parent::dbconn();

$result=mysql_query("select * from table01",$id);

while($row=mysql_fetch_array($result)){

echo "Numbers:".$row['number']."\tName:".$row['name']."
";

}

}

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!
";

}

function secure_handler(){

$this->handled_event();

}

}

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值