首页 > 解决方案 > PHP:使用 $_GET 从 javascript 中检索值

问题描述

我正在制作旅行套餐网站,我想在 php 中使用 GET、POST、REQUEST 检索数据。但我收到一条错误消息,提示“Array () no Notice: Undefined index:”


Javascript函数:

通过简单地将“包裹”和“人数”中的值相乘来计算总数


下面是我的代码

<script type="text/javascript">

function totalPrice(){

document.getElementById("total").value= "CAD "+ 
(document.getElementById("package").value * document.getElementById("person").value);}   
</script>

<!-- package selection -->

<form action="test.php" method="get">


<select id="package" onchange="totalPrice();" >
      <option value="2300">Wild West (Banff, Jasper)</option>
      <option value="3300">East Coast(St.Johns)</option>
      <option value="1300">Winery Tour(Kelowna, Penticton)</option>
      <option value="2600">Northern Light(Yellowknife)</option>
 </select>

 <select id="person" onchange="totalPrice();">
          <option value="1">1 person</option>
          <option value="2">2 persons</option>
          <option value="3">3 persons</option>
          <option value="4">4 persons</option>
          <option value="5">5 persons</option>
          <option value="6">6 persons</option>
          <option value="7">7 persons</option>
          <option value="8">8 persons</option>

  </select>
  <input type="submit">

  </form>
  <!-- total Amount -->
  <label class="form" >Total Amount</label>
  <input size =40 type="text" name="total" id="total" disabled>

“测试.php”

<h1>payment total</h1>

<?php

print_r($_GET);
if(!isset($_GET['total'])){
  echo "no";
}
echo $_GET['total'];
 ?>

标签: javascriptphp

解决方案


为了将字段“total”包含在发送到 test.php 服务器的内容中,您需要将“total”输入字段移动到表单标记内。表单标签之外的任何内容都不会包括在内。

编辑添加示例:

<script type="text/javascript">

function totalPrice(){

document.getElementById("total").value= "CAD "+ 
(document.getElementById("package").value * document.getElementById("person").value);}   
</script>

<!-- package selection -->

<form action="test.php" method="get">


<select id="package" onchange="totalPrice();" >
      <option value="2300">Wild West (Banff, Jasper)</option>
      <option value="3300">East Coast(St.Johns)</option>
      <option value="1300">Winery Tour(Kelowna, Penticton)</option>
      <option value="2600">Northern Light(Yellowknife)</option>
 </select>

 <select id="person" onchange="totalPrice();">
          <option value="1">1 person</option>
          <option value="2">2 persons</option>
          <option value="3">3 persons</option>
          <option value="4">4 persons</option>
          <option value="5">5 persons</option>
          <option value="6">6 persons</option>
          <option value="7">7 persons</option>
          <option value="8">8 persons</option>

  </select>
  <input type="submit">

  <!-- total Amount -->
  <label class="form" >Total Amount</label>
  <input size =40 type="text" name="total" id="total" disabled>

  </form>

推荐阅读