截止目前,微信提供的样例还存在问题。
WxPay.JsApiPay.PHP文件中,GetOpenid()方法:
$baseUrl = urlencode('http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].$_SERVER['QUERY_STRING']);
应该为:
$baseUrl = urlencode('http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING']);
也就是说,后面的查询字符串应该用“?”连接起来,不然会导致出错。