DEFINE("DEFINE_KEY","88284-52C823C8B956EE4DForSansedao");//定义数字签名,http://user.domain.com/login?uid=123&point=0081230125210&orderid=192.168.0.1&sign=qtt7yrq2d6//参数传递,$_GET传的参数数组
get_pay($_GET);
方法:
get_pay($date){
$sign = md5("uid=".$date['uid']."&point=".$date['point']."&orderid=".$date['orderid']."&key=".DEFINE_KEY); if ($date['sign']!=$sign) return "error";
else
return "ok";
}
/问题:$date['sign']永远也不等于$sign吧,但是我们这个程序就是等于了,怎么回事??
get_pay($_GET);
方法:
get_pay($date){
$sign = md5("uid=".$date['uid']."&point=".$date['point']."&orderid=".$date['orderid']."&key=".DEFINE_KEY); if ($date['sign']!=$sign) return "error";
else
return "ok";
}
/问题:$date['sign']永远也不等于$sign吧,但是我们这个程序就是等于了,怎么回事??
$date['point'] = '0081230125210';
$date['orderid'] = '192.168.0.1';
$date['sign'] = 'qtt7yrq2d6';function get_pay($date){
$sign = md5("uid=".$date['uid']."&point=".$date['point']."&orderid=".$date['orderid']."&key=".DEFINE_KEY); if ($date['sign']!=$sign)
return "error";
else
return "ok";
} echo get_pay($date);
if ($date['sign']!=$signs) //这里判断还会不会相等?
$date['point'] = '0081230125210';
$date['orderid'] = '192.168.0.1';
$date['sign'] = 88284-52C823C8B956EE4DForSansedao;//这里应该是:88284-52C823C8B956EE4DForSansedaofunction get_pay($date){
$sign = md5("uid=".$date['uid']."&point=".$date['point']."&orderid=".$date['orderid']."&key=".DEFINE_KEY); if ($date['sign']!=$sign)
return "error";
else
return "ok";
} echo get_pay($date);
其实那也应该不会相等呀!我的接口文档就是这么写的:]$sign=md5(〝uid=〝.$UID.〝&time=〝.$TIME. 〝&ip=〝.$IP. 〝&key=〝. DEFINE_KEY)
其中DEFINE_KEY为双方技术共同约定的字符串.
返回信息:
成功返回:进入游戏
返回失败:错误信息
登录地址示例:
http://user.domain.com/login?uid=123&time=0081230125210&ip=192.168.0.1&sign=qtt7yrq2d6我不理解,但总监说这是对的呀,其实际也是对的,我们自己就用的这个接口。