class test {
private $key='111';
/*验证*/
public function verify() {
$prepare_data['a']='aaa';
$prepare_data['b']='bbb';
$prepare_data['c']='ccc';
$prepare_data['d']='ddd';
$prepare_data['e']='eee';
$prepare_data['f']='fff';
$prepare_data['g']='ggg';
$prepare_data['h']='hhh';
$prepare_data['i']='iii';
$prepare_data['k']='';
foreach($prepare_data as $value){
if(!empty($value))
$origin.=$value;
}
$prepare_data['SignMsg']=strtoupper(md5($origin.$this->key));
return $prepare_data;
}
/*相应*/
public function receive() {
if($this->returnSign()){
/*支付成功*/
$return_data['order_id'] = $_POST['OrderNo'];
$return_data['payment_id'] = $_POST['TransNo'];
$return_data['price'] = $_POST['TransAmount'];
$return_data['order_status'] = 0;
return $return_data;
echo 'OK';
}else{
echo 'Error';
error_log(date('m-d H:i:s',SYS_TIME).'| GET: illegality notice : flase |'."\r\n", 3, CACHE_PATH.'pay_error_sanda.php');
showmessage(L('illegal_sign'));
return false;
}
}
/*响应数据验证*/
private function returnSign(){
$params=array(
'aaa'=>'',
'bbb'=>'',
'ccc'=>'',
'ddd'=>'',
'eee'=>'',
'fff'=>'',
'ggg'=>'',
'hhh'=>'',
'iii'=>'',
'SignType'=>'MD5',
);
foreach($_POST as $key=>$value){
if(isset($params[$key])){
$params[$key]=$value;
}
}
$TransStatus=(int)$_POST['TransStatus'];
$origin='';
foreach($params as $key=>$value){
if(!empty($value))
$origin.=$value;
}
$SignMsg=strtoupper(md5($origin.$this->key));
if($SignMsg==$_POST['SignMsg'] and $TransStatus==1){
return true;
}else{
return false;
}
}
}
$object=new test();
var_dump($object->verify());
?>