NULL单选按钮值

时间:2013-07-19 08:11:21

标签: php html e-commerce

在我的代码的第13行,我得到一个NULL $ NaN值。如果我用静态整数替换$ _POST ['amount'],则代码POST正确的值。但是试图添加一些功能,现在我无法通过数据传递???

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 -->

2 个答案:

答案 0 :(得分:0)

不要将amount field作为array 用户将select一个

试试这个,

<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>

答案 1 :(得分:0)

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