0

在我的代码的第 13 行,我得到一个 NULL $NaN 值。如果我将 $_POST['amount'] 替换为静态整数,则代码会发布正确的值。但是尝试添加一点功能,现在我无法让数据通过???

http://i40.tinypic.com/34gxauw.png

<div id="container">
<?php
    require_once('stripe-php/lib/Stripe.php');
    $stripe = array(
    'secret_key' => 'sk_07C5ukIdqxyDGFqIKB8f7TXqGGyQt',
    'publishable_key' => 'pk_07C58BHnzuFYQr9AUoZD6SCLiwANw'
    );
    Stripe::setApiKey($stripe['secret_key']);

    if ($_POST) {
        $charge = Stripe_Charge::create(array(
            'card' => $_POST['stripeToken'],
            'amount' => $_POST['amount'],
            'currency' => 'usd'
        ));
        var_dump($_POST['amount']);
        $quotes = array(
            "Thank you for your purchase!",
            "Enjoy your experience with with us!"
        );

        echo "<h1>Here's your quote!</h1>";
        echo "<h2>".$quotes[array_rand($quotes)]."</h2>";
    }
    else {
?>

    <h2>TPC Holdings</h2>
    <h3>Select your campaign package!!</h3>

    <form>
        <fieldset>
            <legend>Select your package</legend>
            <p>
                <label>Select your package</label>
                <input type = "radio"
                        name = "amount[]"
                        id = "sizeSmall"
                        value = "50"
                        checked = "checked" />
                <label for = "sizeSmall">$50.00</label>

                <input type = "radio"
                        name = "amount[]"
                        id = "sizeMed"
                        value = "75" />
                <label for = "sizeMed">$75.00</label>

                <input type = "radio"
                        name = "amount[]"
                        id = "sizeLarge"
                        value = "large" />
                <label for = "sizeLarge">$100.00</label>
           </p>
       </fieldset>
    </form>

    <form action="paybill.php" method="post">
        <script src="https://button.stripe.com/v1/button.js"
             class="stripe-button"
             data-key="<?php echo $stripe['publishable_key']; ?>"
             data-amount="<?php echo $d_charge; ?>"
             data-description="TPC purchase"
             data-label="Buy"></script>
    </form>

<?php
  }
?>

</div><!-- #container -->
4

2 回答 2

0

不要让 用户只从这些中选择一个amount fieldarrayselect

试试这个,

<p>
    <label>Select your package</label>
    <input type = "radio"
        name = "amount"
        id = "sizeSmall"
        value = "50"
        checked = "checked" />
    <label for = "sizeSmall">$50.00</label>

    <input type = "radio"
        name = "amount"
        id = "sizeMed"
        value = "75" />
    <label for = "sizeMed">$75.00</label>

    <input type = "radio"
        name = "amount"
        id = "sizeLarge"
        value = "large" />
    <label for = "sizeLarge">$100.00</label>
</p>
于 2013-07-19T08:13:35.887 回答
0

您的 NAN 问题来自您的value="large". 它应该是value="100"或您需要的任何值。我只能假设如何处理该值,您的处理程序需要一个数字而不是字符串。

于 2017-12-08T21:11:17.480 回答