支付宝的商户注册方式
您好,为了更好的帮您解决问题,请您联系商户客服咨询即可。点击链接http://help.alipay.com/support/index_sh.htm联系商户的在线客服(工作时间:周一至周日9:00-22:00)咨询或拨打商户服务热线0571-88158090(工作时间:周一至周五9:00-18:00,节假日除外)温馨提示:如果您要联系商户在线客服,请您先关闭现在的对话框,再找到商家在线客服,点击“点此咨询”即可进入商家在线客服咨询。
大概思路就是
1.把支付宝官方示例代码中的lib文件夹下的所有文件改名,比如:service.class.php改成Service.php,把里面加载文件的那句去掉,
2,在tp的Vendor目录下新建一个Alipay文件夹(不用新建一个目录页可以),把第一步修改好的文件放进去。3新建一个OrderAction.class.php,
public function _initialize() { <?php class OrderAction extends Action { public function _initialize() { Vendor('Alipay.Corefunction'); Vendor('Alipay.Notify'); Vendor('Alipay.Service'); Vendor('Alipay.Submit'); Vendor('Alipay.Alipayconfig'); } function alipayto() { C('TOKEN_ON',false); $aliapy_config = alicofings(); $out_trade_no = 'gds' . date('Ymdhis', time()) . round(0, 100); $subject = $_POST['subject']; $body = $_POST['body']; $total_fee = $_POST['total_fee']; $paymethod = ''; $defaultbank = ''; $anti_phishing_key = ''; $exter_invoke_ip = ''; $show_url = 'http://www.uvmonopoly.com'; $extra_common_param = ''; $royalty_type = ""; $royalty_parameters = ""; $parameter = array ( "service" => "create_direct_pay_by_user", "payment_type" => "1", "partner" => trim($aliapy_config['partner'] ), "_input_charset" => trim(strtolower($aliapy_config['input_charset'])), "seller_email" => trim($aliapy_config['seller_email']), "return_url" => trim($aliapy_config['return_url']), "notify_url" => trim($aliapy_config['notify_url']), "out_trade_no" => $out_trade_no, "subject" => $subject, "body" => $body, "total_fee" => $total_fee, "paymethod" => $paymethod, "defaultbank" => $defaultbank, "anti_phishing_key" => $anti_phishing_key, "exter_invoke_ip" => $exter_invoke_ip, "show_url" => $show_url, "extra_common_param" => $extra_common_param, "royalty_type" => $royalty_type, "royalty_parameters" => $royalty_parameters); $d = D('Order'); $d->create(); $d->user_id = Cookie :: get('user_id'); $d->total_fee = $total_fee; $d->order_id = $out_trade_no; $d->creat_time=time(); $d->trde_status = 0; if (false !== $d->add()) { $alipayService = new AlipayService($aliapy_config); $html_text = $alipayService->create_direct_pay_by_user($parameter); $this->assign('alipay', $html_text); $this->assign('total_fee', $total_fee); $this->display(); } else { $this->error('系统错误暂时不能充值,请联系在线客服!'); } } public function returnurl() { $aliapy_config = alicofings(); $alipayNotify = new AlipayNotify($aliapy_config); $verify_result = $alipayNotify->verifyReturn(); if ($verify_result) { //验证成功 $out_trade_no = $_GET['out_trade_no']; //获取订单号 $trade_no = $_GET['trade_no']; //获取支付宝交易号 $total_fee = $_GET['total_fee']; //获取总价格 $d = D('Order'); $result = $d->where("order_id='.$trade_no.'")->select(); $status = $result[0]['trde_statuse']; if ($_GET['trade_status'] == 'TRADE_FINISHED' || $_GET['trade_status'] == 'TRADE_SUCCESS') { if ($status == 0) { $d->create(); $d->trde_status = 1; $d->alipay_trade_no; $d->total->fee = $total_fee; } } else { //echo "trade_status=" . $_GET['trade_status']; $this->assign('msg','充值失败!'); } echo "验证成功<br />"; echo "trade_no=" . $trade_no; } else { $this->assign('msg','验证失败'); } $this->display(); } public function notifyurl() { $aliapy_config = alicofings(); $alipayNotify = new AlipayNotify($aliapy_config); $verify_result = $alipayNotify->verifyNotify(); if ($verify_result) { //验证成功 $out_trade_no = $_POST['out_trade_no']; //获取订单号 $trade_no = $_POST['trade_no']; //获取支付宝交易号 $total_fee = $_POST['total_fee']; //获取总价格 if ($_POST['trade_status'] == 'TRADE_FINISHED' || $_POST['trade_status'] == 'TRADE_SUCCESS') { //交易成功结束 echo "success"; //请不要修改或删除 //logResult("这里写入想要调试的代码变量值,或其他运行的结果记录"); } else { echo "success"; //其他状态判断。普通即时到帐中,其他状态不用判断,直接打印success。 //调试用,写文本函数记录程序运行情况是否正常 //logResult("这里写入想要调试的代码变量值,或其他运行的结果记录"); } //——请根据您的业务逻辑来编写程序(以上代码仅作参考)—— ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// } else { //验证失败 echo "fail"; //调试用,写文本函数记录程序运行情况是否正常 //logResult("这里写入想要调试的代码变量值,或其他运行的结果记录"); } } } ?>
<?php function alicofings(){ $aliapy_config['partner'] = '2088302763'; //安全检验码,以数字和字母组成的32位字符 $aliapy_config['key'] = 'm8ve6f5x1d90hjl5e95'; //签约支付宝账号或卖家支付宝帐户 $aliapy_config['seller_email'] = 'qiyunnetwork@vip.163.com'; //页面跳转同步通知页面路径,要用 http://格式的完整路径,不允许加?id=123这类自定义参数 //return_url的域名不能写成http://localhost/create_direct_pay_by_user_php_utf8/return_url.php ,否则会导致return_url执行无效 $aliapy_config['return_url'] = 'http://www.x.com/order/returnurl.html'; //服务器异步通知页面路径,要用 http://格式的完整路径,不允许加?id=123这类自定义参数 $aliapy_config['notify_url'] = 'http://www.gudashi.com/order/notifyurl.html'; //↑↑↑↑↑↑↑↑↑↑请在这里配置您的基本信息↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ //签名方式 不需修改 $aliapy_config['sign_type'] = 'MD5'; //字符编码格式 目前支持 gbk 或 utf-8 $aliapy_config['input_charset']= 'utf-8'; //访问模式,根据自己的服务器是否支持ssl访问,若支持请选择https;若不支持请选择http $aliapy_config['transport'] = 'http'; return $aliapy_config; } ?>
支付宝接口.zip
9.26 KB, 下载次数: 576