1

我正在尝试托管表单以进行循环实现并使用 PHP 创建签名。我已经按照文档,搜索示例并复制代码并尝试了我能想到的所有组合,但我无法弄清楚问题是什么 - 在我的 PHP 页面上出现了表单,但在顶部我看到了 PHP 的一部分代码而不是执行的代码。

我的代码:

<?php
require_once('/lib/recurly.php');

// Required for the API
Recurly_Client::$subdomain = 'myactualsubdomain'
Recurly_Client::$apiKey = 'removedmyapiforsecurity';
Recurly_js::$privateKey = 'removedmyprivatekeyforsecurity';

$signature = Recurly_js::sign(array(
'account'=>array('account_code'=>'aaa1234588'), 
 'subscription' => array( 
 'plan_code' => 'innovator',
  'currency'=>'USD', 
    )));
?>

<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Innovator Yearly Subscription</title>
<html>
  <head>
  <link rel="stylesheet" href="/css/recurly.css" type="text/css" />
<script src="/js/jquery.js"></script>
<script src="/js/recurly.js"></script>
    <script>
    $(function(){
      Recurly.config({
    subdomain: 'supportpay'
    , currency: 'USD' // GBP | CAD | EUR, etc...
  });

  Recurly.buildSubscriptionForm({
    target: '#recurly-subscribe',
    planCode: 'innovator',
    successURL: 'success.php',
    signature: '$signature',
distinguishContactFromBillingInfo: false,
collectCompany: false,
collectContact: true,
termsOfServiceURL: 'http://supportpay.com/contact/terms-of-use/',
acceptPaypal: false,
acceptedCards: ['mastercard',
                'discover',
                'american_express',
                'visa'],
  });

});
    </script>
    </head>
  <body>
    <h1>Subscribe to Plan</h1>
    <h2>Plan Code: Innovator - Yearly5</h2>
    <div id="recurly-subscribe">
    </div>
  </body>
</html>

当我使用该代码并运行 php 浏览器时,表单/页面会正确呈现,除了顶部有此代码

array('account_code'=>'aaa1234588'),'subscription' => array( 'plan_code' =>'innovator', 'currency'=>'USD', ))); ?> 

有人可以说明我在这里做错了什么吗?

谢谢!

4

1 回答 1

2

似乎您需要将 PHP 变量放在 PHP 标记中:

Recurly.buildSubscriptionForm({
  target: '#recurly-subscribe',
  planCode: 'innovator',
  successURL: 'success.php',
  signature: '<?php print $signature ?>',
  distinguishContactFromBillingInfo: false,
  collectCompany: false,
  collectContact: true,
  termsOfServiceURL: 'http://supportpay.com/contact/terms-of-use/',
  acceptPaypal: false,
  acceptedCards: ['mastercard',
                  'discover',
                  'american_express',
                  'visa'],
});
于 2014-03-14T18:06:55.707 回答