【问题标题】:How to use authorize.net without framework如何在没有框架的情况下使用 authorize.net
【发布时间】:2016-12-04 08:20:24
【问题描述】:

我无法让 authorize.net 正常工作。我觉得好像我错过了一些东西,但不确定它是什么。我在网站上按照此指南进行操作:http://developer.authorize.net/hello_world/ 我相信我的作曲家设置正确,但是当我运行示例代码时出现错误

致命错误:在 /home/admin/web/*****/public_html/pricing/vendor/authorizenet/authorizenet/lib/net/ 中找不到类 'Goetas\Xsd\XsdToPhp\Jms\Handler\BaseTypesHandler'在第 82 行授权/api/controller/base/ApiOperationBase.php

注意:“/web/”后位置的星号用于隐藏出于安全原因列出的域。

任何线索我怎样才能让它工作?

有没有人有将 authorize.net 集成到自定义构建平台的分步指南?我们只是尝试发送从卡中收费所需的基本信息并收到回复。

【问题讨论】:

    标签: php composer-php authorize.net


    【解决方案1】:

    致在尝试将 authorize.net 快速集成到他们的支付系统或网站时遇到问题的任何人。下面是我用来构建/自定义以使其正常工作的代码。除非您正在创建一个完全集成的系统,否则不需要该框架,这在网站上没有明确说明。您显然必须进一步扩展此代码,但这应该是任何人都需要快速集成到授权中的内容。

    $params = array(
    
    'x_invoice_num' => 'test',
    'x_amount' => '5',
    'x_exp_date' => '1202',
    'x_address' => 'test',
    'x_zip' => '12345',
    'x_first_name' => 'test',
    'x_last_name' => 'test',
    'x_relay_response' => false,
    'x_type' => 'AUTH_CAPTURE',
    'x_method' => 'CC',
    'x_login' => 'yourlogin code goes here',
    'x_tran_key' => 'your trans key goes here',
    'x_card_num' => '4111111111111111',
    'x_card_code' => '143',
    'x_delim_data' => true,
    'x_delim_char' => '|',
    'x_relay_response' => false
     );
    
     $postString = '';
     foreach ($params as $key => $value)
     $postString .= $key.'='.urlencode($value).'&';
     $postString = trim($postString, '&');
     $url = 'https://secure.authorize.net/gateway/transact.dll';
    
     $request = curl_init($url);
     curl_setopt($request, CURLOPT_HEADER, 0);
     curl_setopt($request, CURLOPT_RETURNTRANSFER, 1);
     curl_setopt($request, CURLOPT_POSTFIELDS, $postString);
     curl_setopt($request, CURLOPT_SSL_VERIFYPEER, false);
     curl_setopt($request, CURLOPT_SSL_VERIFYHOST, false);
     $postResponse = curl_exec($request);
     curl_close($request);
     print_r($postResponse);
    
     $response = explode('|', $postResponse);
     if (!isset($response[7]) || !isset($response[3]) ||            !isset($response[9]))
    {
     $msg = 'Authorize.net returned a malformed response for cart';
     if (isset($response[7]))
     $msg .= ' '.(int)$response[7];
     die('Authorize.net returned a malformed response, aborted.');
     }
    
    $message = $response[3];
    
    switch ($response[0]) // Response code
    {
    case 1: // Payment accepted
    print_r($response[1]);
    break ;
    
    case 4: // Hold for review
    print_r($response[4]);
    break ;
    
    default:
    echo $message;
    
    exit;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-27
      • 2014-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多