PHP未索引索引

PHP未索引索引,php,Php,我正在创建一个PHP表单,用于计算零钱总额,例如便士、25美分、10美分和5美分。在第29-32行收到未定义的索引错误之前,代码似乎工作正常。有人能帮我解决这个问题,告诉我我做错了什么吗 <head> <title>Fill in the form and I will show the greeting. </title> <style type="text/css"> h1 {font-family:'Times New Roman'; }

我正在创建一个PHP表单,用于计算零钱总额,例如便士、25美分、10美分和5美分。在第29-32行收到未定义的索引错误之前,代码似乎工作正常。有人能帮我解决这个问题,告诉我我做错了什么吗

<head> 
<title>Fill in the form and I will show the greeting. </title>
<style type="text/css">
h1 {font-family:'Times New Roman'; }
</style>

<body bgcolor="orange">  
<form action="Lab6-1.php" method="post" >
<h1>Please enter your coin count and denominations.</h1>
<p>
<h1>Pennies (1 cent):
   <input type="text" size="16" maxlength="20" name="pennies" value="<?php echo $_POST['pennies']?>"/></h1>

<h1>Nickels (5 cents):
    <input type="text" size="16" maxlength="20" name="nickels" value="<?php echo $_POST['nickels']?>"/></h1> 

<h1>Dimes (10 cents):  
    <input type="text" size="16" maxlength="20" name= "dimes" value="<?php echo $_POST['dimes']?>"/></h1>
<h1> Quarters (25 cents):
    <input type="text" size="16" maxlength="20" name= "quarters" value="<?php echo $_POST['quarters']?>"/></h1>
<br /><br />
<input type="submit" value="Calculate Coins" />
<input type="reset" value ="Clear Form" />

<?php
   $pennies = $_POST['pennies']*.01;
   $nickels = $_POST['nickels']*.05;
   $dimes = $_POST['dimes']*.10;
   $quarters = $_POST['quarters']*.25;

   $total = $pennies + $nickels + $dimes + $quarters;

   $money = array ( "Quarters" => $quarters, "Dimes"=> $dimes, "Nickels" => $nickels, "Pennies" => $pennies, "Total" => $total);

   echo "<table border = \"1\" >";


 foreach ( $money as $key => $value ) {
 print("<tr><td> $key </td><td> $value</td> </tr>");  
  } 
 echo "</table>";
?>

</p>
</form>
</body>
</html>

填好表格,我会把问候语给你看。
h1{字体系列:'Times New Roman';}
请输入您的硬币数量和面额。

便士(1美分):


未定义索引
表示您的
$\u POST
数组项之一不存在。例如,它可以是
$\u POST['quarters']

您应该首先检查变量是否存在,如下所示:

$quarters = $_POST['quarters'] ? $_POST['quarters']*.25 : 0;

这是因为即使在提交表单之前,表单最初也在寻找变量
$\u POST['pennies']
$\u POST['nickels']
$\u POST['dimes']
$\u POST['quarters']
,它们当时并不存在。所以你得到了

未定义索引错误

可以通过将表单提交代码包装在条件中来避免这种情况

并将提交按钮命名为

<input type="submit" name="btnSubmit" value="Calculate Coins" /> 


你能显示你得到了什么错误吗使用
print\r($\u POST)
查看你得到了什么,而不是你期望得到的。但是,当你在设置数组索引之前像在POST中那样使用时,未定义的索引错误会增加
<input type="submit" name="btnSubmit" value="Calculate Coins" />