2012-04-20 79 views
0

錯誤,說明PHP不會更新更新查詢

注意:未定義的變量:行E:\ XAMPP \ htdocs中\ Edit_Supp.php第9行

注意:未定義指數:ID在E:\ XAMPP \ htdocs目錄\ Edit_Supp.php上線12 供應商更新

代碼:Edit_Supp_Form.php

<?php 
$SupplierID = $_GET['id']; 
//Connect and select a database 
mysql_connect ("localhost", "root", ""); 
mysql_select_db("supplierdetails"); 
//Run query 
$result1 = mysql_query("SELECT * FROM suppliers WHERE SupplierID=$SupplierID"); 
while($row = mysql_fetch_array($result1)){ 
$SupplierID = $_GET['id'] = $row['SupplierID']; 
$SupplierID = $row['SupplierID']; 
$SupplierName = $row['SupplierName']; 
$Currency = $row['Currency']; 
$Location = $row['Location']; 
$ContactNumber = $row['ContactNumber']; 
$Email = $row['Email']; 
    } 
?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1- strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
<meta name="description" content="" /> 
<meta name="keywords" content="" /> 
<meta name="author" content="" /> 
    <link rel="stylesheet" type="text/css" href="style.css" media="screen" /> 
<form action="Edit_Supp.php" method="post"> 
<br> 
</br> 
<input type="hidden" name="SupplierID" value="<?php echo $SupplierID;?>"/> 

Supplier Name: <input type="text" name="SupplierName" value="<?php echo $SupplierName ;?>" /> 
<br> 
</br> 
Currency: <input type="text" name="Currency" value="<?php echo $Currency ;?>" /> 
<br> 
</br> 
Location: <input type="text" name="Location" value="<?php echo $Location ;?>" /> 
<br> 
</br> 
Contact Number:<input type="text" name="ContactNumber" value="<?php echo $ContactNumber ;?>" /> 
<br> 
</br> 
Email:<input type="text" name="Email" value="<?php echo $Email ;?>" /> 
<br> 
</br> 
<input type="submit" value= "Edit Supplier Information"/> 

</form> 
</div> 
</body> 
</html> 

// Plus作爲Edit_Sup代碼是此頁後面的代碼:

<?php 
$con = mysql_connect("localhost", "root", ""); 
    mysql_select_db("supplierdetails"); 
     if (!$con)  
      {  
     die('Could not connect: ' . mysql_error());   
     }  
//Run a query   
$SupplierID= $_POST['id'] = $row ["SupplierID"]; 
$result1 = mysql_query ("SELECT * FROM suppliers WHERE SupplierID= '".$SupplierID."'") or die (mysql_error());  
$row = mysql_fetch_array($result1); 
$SupplierID = $_GET['id']; 
$SupplierID = $_POST['id']; 
$SupplierName = $_POST['SupplierName']; 
$Currency = $_POST['Currency']; 
$Location = $_POST['Location']; 
$ContactNumber = $_POST['ContactNumber']; 
$Email = $_POST['Email']; 
$SupplierID = $row['SupplierID'];   
$query = "UPDATE suppliers SET SupplierName = '".$SupplierName."', Currency  = '".$Currency."', Location = '".$Location."', ContactNumber = '".$ContactNumber."', Email = '".$Email."' WHERE SupplierID = '".$SupplierID."'";  
$result1 = mysql_query($query);   
//Check whether the query was successful or not  
if($result1) 
{   
echo "Supplier Updated"; 

} 
else 
{   
die ("Query failed");  
    }  
?> 
+0

可能重複[PHP更新查詢失敗my_fetch_array(http://stackoverflow.com/questions/10243509/php-update-query -fail-my-fetch-array) – 2012-04-20 10:39:13

+0

哪裏重複? – 2012-04-20 10:41:49

+2

我聞到SQL注入。 – ThiefMaster 2012-04-20 10:42:04

回答

2

你引用的Edit_sup.php$_POST['id'],但我沒有看到名爲id任何輸入欄。 和9號線的Edit_sup.php讀取 -

$SupplierID= $_POST['id'] = $row ["SupplierID"]; 

我沒有看到你在哪裏得到了$row變量從。

+0

代碼是很醜陋的btw。 – 2012-04-20 10:42:29

+0

這裏的id是:http://localhost/EditSupForm.php?id = 2003 – 2012-04-20 10:43:06

+0

然後它的一個$ _GET – 2012-04-20 10:43:51

0

你正在試圖獲得$row['id'],我想你想要的是$_POST['SupplierID']