我有一個頁面updprod.php
和update.php
。頁面update.php
顯示一個產品列表,旁邊有一個編輯和刪除按鈕。當我點擊編輯鏈接時,會顯示另一個頁面,其中包含要禁用字段名稱和品牌的產品的名稱,品牌和價格。我只需要改變價格。產品名稱,品牌和價格沒有相應的顯示在頁面
發生了什麼事情是,當我點擊編輯鏈接時,顯示的名稱,品牌和價格是列表中的最後一個產品。名稱和品牌也沒有完全顯示。如果我改變價格,我的表格會相應更新。
我遇到的主要問題是產品名稱,品牌和價格,旁邊我點擊編輯鏈接的產品沒有出現在文本框中,因爲它應該是。
下面是我updprod.php
代碼
<?php
include_once("db_connect.php");
if (isset($_POST['update']))
{
$prod_id = $_POST['prod_id'];
$prod_name = $_POST['prod_name'];
$prod_brand = $_POST['prod_brand'];
$prod_price = $_POST['prod_price'];
// checking empty field
if (empty($prod_price))
{
// if name field is empty
if (empty($prod_price))
{
echo "<font color='red'>Price field is empty.</font><br/>";
}
}
else
{
// updating the table
$result = mysql_query("UPDATE tblretprod
SET prod_price='$prod_price' WHERE prod_id=$prod_id");
// redirecting to the display page. In our case, it is index.php
header("Location: update.php");
}
}
?>
<?php
$prod_id = $_GET['prod_id'];
$result = mysql_query("SELECT a.prod_name, a.prod_brand, b.prod_price
FROM tblproduct a, tblretprod b where a.prod_id = b.prod_id")
or die(mysql_error());
while ($res = mysql_fetch_array($result))
{
$prod_name = $res['prod_name'];
$prod_brand = $res['prod_brand'];
$prod_price = $res['prod_price'];
}
?>
<html>
<title>Edit Product</title>
<body>
<a href="#">Home</a>
<br/><br/>
<form name="edit" method="post" action="updprod.php">
<table border="0">
<tr>
<td>Product Name</td>
<td>
<input disabled="disabled"
type="text" name="prod_name" value=<?php echo $prod_name;?>/>
</td>
</tr>
<tr>
<td>Brand</td>
<td>
<input disabled="disabled"
type="text" name="prod_brand" value=<?php echo $prod_brand;?>>
</td>
</tr>
<tr>
<td>Product Price</td>
<td>
<input type="text" name="prod_price" value=<?php echo $prod_price;?>>
</td>
</tr>
<tr>
<td>
<input type="hidden" name="prod_id" value=<?php echo $_GET['prod_id'];?>>
</td>
<td><input type="submit" name="update" value="Update"></td>
</tr>
</table>
</form>
</body>
</html>
你好,謝謝你的回覆。在點擊編輯時,所有的產品都被顯示出來,而不是我點擊編輯的那個。我可以知道爲什麼這些名字沒有完全顯示出來嗎? – user2534128