注意:未定义的索引:C:\ xampp \ htdocs中的id

时间:2013-02-03 14:20:47

标签: php indexing undefined

  

可能重复:
  Reference - What does this error mean in PHP?

我正在尝试使用PHP建立数据库,但我一直收到错误,说我在id中有一个未定义的索引。

我想将数据添加到我的数据库中,也可以更新,删除和显示信息。这是我的更新信息代码。

<?PHP
// Connection to MySQL
$dbconnection = @mysql_connect('localhost','root','');
if (!$dbconnection) {
echo '<p> Unable to connect to the database at this time.</br></br></p>';
exit();}
else {
echo '<p> connection to database is successful</br></br> </p>';}
//select Mysql Database-ijdb
if (!@mysql_select_db('disease')){
 exit('<p> Unable to locate the information on the database.</p>');
}

//Receive Variables from the GET of JOKELIST.php
if(isset($_POST['submit']))
{
$GeneticOrganisation=$_POST['newGeneticOrganisation'];
$ProteinInformation=$_POST['newProteinInformation'];
$Symptoms=$_POST['newSymptoms'];
$Population=$_POST['newPopulation'];
$Cure=$_POST['newCure'];
$OriginOfDisease=$_POST['newOriginOfDisease'];
$dmdid=$_POST['id'];
// Print receieved variables to check accuracy

 $sql= "UPDATE dmd SET GeneticOrganisation ='".$GeneticOrganisation."' WHERE id                
`='".$dmdid."'";
$sql= "UPDATE dmd SET ProteinInformation ='".$ProteinInformation."' WHERE id  ='".$dmdid."'";                                
 $sql= "UPDATE dmd SET Symptoms ='".$Symptoms."' WHERE id ='".$dmdid."'";
$sql= "UPDATE dmd SET Population ='".$Population."' WHERE id ='".$dmdid."'";
$sql= "UPDATE dmd SET Cure ='".$Cure."' WHERE id ='".$dmdid."'";
$sql= "UPDATE dmd SET OriginOfDisease ='".$OriginOfDisease."' WHERE id ='".$dmdid."'";
}
if (!@mysql_query($sql))
 echo "<p> Information could not be updated-".mysql_error();
 else{
echo "<p> Information updated successfully";
echo '<a href="diseaseInfo.php"> View the information on the disease here.';
}

?>

2 个答案:

答案 0 :(得分:4)

听起来$_POST['id']没有被设置。

您需要确保在使用之前设置它,或者检查它是否已设置,如果不是,则为其设置默认值。

例如:

if (isset($_POST['id'])) { // If the id post variable is set
    $dmid = $_POST['id'];
} else { // If the id post variable is not set
    $dmid = 1;
}

答案 1 :(得分:0)

以下行很可能会导致它:

$dmdid=$_POST['id'];

验证您的表单(或其他POST供应商)是否提供了&#39;&#39;键。有类似的东西:

<input type="hidden" name="id"  value="xx"/>