【问题标题】:Retrieving information with POST method using PHP使用 PHP 使用 POST 方法检索信息
【发布时间】:2013-01-15 10:37:25
【问题描述】:

我正在尝试将产品数量从 product.php 发送到 cart.php。

 <form id="form1" name="form1" method="POST" action="cart.php">
    <input type="hidden" name="pid" id="pid" value="<?php echo $id; ?>" />
    <!--<input type="text" name="qnty" id="qnty"/>-->
   <select name="qnty">
    <option></option><option>5</option><option>6</option><option>7</option><option>8</option><option>9</option><option>10</option><option>11</option><option>12</option><option>13</option><option>14</option><option>15</option><option>20</option><option>25</option><option>30</option><option>40</option><option>50</option><option>60</option><option>70</option><option>80</option><option>90</option><option>100</option><option>150</option><option>200</option><option>300</option></select>

    <input type="submit" name="button" id="button" value="Add to Shopping Cart" />
  </form>

然后我尝试使用以下方法检索 cart.php 中 qnty 的值:

if(isset($_POST['qnty']) )
{
  $qnty = $_POST['qnty'];
}
echo $qnty 

但是我收到未定义的变量错误消息。当我将表单提交到 product.php 而不是 cart.php 时,它工作正常。有谁知道我哪里出错了?

【问题讨论】:

  • 试试 print_r($_POST)。它将打印 $_POST 数组的全部内容。如果数据不存在,那么您正在寻找错误的位置。 php.net/manual/en/function.print-r.php
  • 感谢返回“Array ( )”,当您说在错误的位置查找时,您是什么意思?
  • 显然,您的 $_POST 数组为空。尝试 print_r($_REQUEST) 查看完整的 http 请求(希望包括您的参数)。 php.net/manual/en/reserved.variables.request.php

标签: php forms shopping-cart


【解决方案1】:

这是因为你需要声明变量,否则它会显示为这样

Notice: Undefined variable: id in C:\xampp\htdocs\amazon\test.php on line 9

【讨论】:

    【解决方案2】:

    在 if 循环内打印 $qnty 或在 if 循环前声明 $qnty=0

    在您的情况下,如果未设置qnty,它将给出未定义的变量$qnty

    【讨论】:

    • 感谢我尝试了 print_r($_POST),它正在返回 Array ( )?
    猜你喜欢
    • 1970-01-01
    • 2013-05-22
    • 1970-01-01
    • 2021-09-08
    • 2021-12-14
    • 1970-01-01
    • 2014-02-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多