支付宝支付提交订单的时候,怎么提示Undefined index: request_token
@
2018-02-07 15:33:52
0
1
3448

 require_once(app_path() . "/Tool/Alipay/alipay.config.php");

    require_once(app_path() . "/Tool/Alipay/lib/alipay_submit.class.php");


    //返回格式

    $format = "xml";

    //必填,不需要修改


    //返回格式

    $v = "2.0";

    //必填,不需要修改


    //请求号

    $req_id = date('Ymdhis');

    //必填,须保证每次请求都是唯一


    //**req_data详细信息**


    //服务器异步通知页面路径

    $notify_url = "http://" . $_SERVER['HTTP_HOST'] . '/service/pay/ali_notify';

    //需http://格式的完整路径,不允许加?id=123这类自定义参数


    //页面跳转同步通知页面路径

    $call_back_url = "http://" . $_SERVER['HTTP_HOST'] . '/service/pay/ali_result';

    //需http://格式的完整路径,不允许加?id=123这类自定义参数

    //http://127.0.0.1:8800/WS_WAP_PAYWAP-PHP-UTF-8/call_back_url.php


    //操作中断返回地址

    $merchant_url = "http://" . $_SERVER['HTTP_HOST'] . '/service/pay/ali_merchant';

    //用户付款中途退出返回商户的地址。需http://格式的完整路径,不允许加?id=123这类自定义参数


    //卖家支付宝帐户

    $seller_email = 'ajjnae2770@sandbox.com';

    //必填


    //商户订单号

    $out_trade_no = $_POST['order_no'];

    //商户网站订单系统中唯一订单号,必填

    Log::info('out_trade_no:' . $out_trade_no);


    //订单名称

    $subject = $_POST['name'];

    //必填


    //付款金额

    $total_fee = $_POST['total_price'];

    //必填

   

    //请求业务参数详细

    $req_data = '' 。 $notify_url 。 '' 。 $call_back_url 。 '<卖家帐户名称>' 。 $seller_email 。 '' 。 $out_trade_no 。 '</out_trade_no><主题>' 。 $主题。 '</subject><total_fee>' 。 $total_fee 。 '</total_fee><merchant_url>' 。 $merchant_url 。 '';

    //必填


    /********************************************************** *********/


    // 构造需要请求的参数储备,消耗

    $para_token = array(

    "service" => "alipay.wap. trade.create.direct",

    "partner" => trim($alipay_config['partner']),

    "sec_id" => trim($alipay_config['sign_type' ]),

    “格式”=> $格式,

    “v”=> $v,

    “req_id”=> $req_id,

    "req_data" => $req_data,

    "_input_charset" => trim(strtolower($alipay_config['input_charset']))

    );

    

    //创建请求

    $alipaySubmit = new \AlipaySubmit($alipay_config);


    //报错点

    $html_text = $alipaySubmit->buildRequestHttp($para_token);

    

    //URLDECODE的返回信息

    $html_text = urldecode($html_text) ;


##    //解析远程模拟提交后返回的信息

    $para_html_text = $alipaySubmit->parseResponse($html_text);

    

    //获取request_token

    $request_token = $para_html_text['request_token'];



#    /**************************根据授权码token调用交易接口alipay.wap.auth.authAndExecute**************************/


#    // 业务详细

    $req_data = '' 。 $request_token 。 '</request_token></auth_and_execute_req>';

    //必填


    //构造要请求的参数队列,耗费托盘

    $parameter = array(

    "service" => "alipay.wap.auth.authAndExecute",

   “合作伙伴”=> rim($alipay_config['partner']),

    "sec_id" =>;修剪($alipay_config['sign_type']),

   “格式”=>; $format,

    "v" =>; $v,

   “req_id”=> $req_id,

    "req_data" =>; $req_data,

    "_input_charset" =>; Trim(strtolower($alipay_config['input_charset']))

    );


    //建立请求

    $alipaySubmit = new \AlipaySubmit($alipay_config);

    $html_text = $alipaySubmit->buildRequestForm($parameter, 'get', '确认');


返回 $html_text;

  }


@

全部回复(1)
lge

未获取到 request_token,你是不是没有申请支付授权啊


热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!