我正在嘗試更改表單數據並更新mysql中的數據。但是當我嘗試更新時,數據並沒有改變。表單頁面如下:php更新不起作用
while ($list5 = mysql_fetch_array($result)) {
$reqitem=$list5['id'];
echo "<td width='34%' id='addinput'><input type='text' size='70' id='item_name$i'
name='item_name[$i]' placeholder='{$list5['prod_description']}'
value='{$list5['prod_description']}'></td>";
}
而且保存頁面腳本如下:
foreach($_POST['id'] as $key=>$value)
{
$item_name= $_POST['item_name'][$i];
$q = "UPDATE poto_customer_items prod_description='$item_name' WHERE tender_id='$tender_id' and id='$value' ";
mysql_query($q) or die(mysql_error());
}
我知道有一個與腳本問題。我對PHP很陌生,所以無法掌握我犯的錯誤。任何人都可以請幫我。
以下是html代碼:
<html>
<head>
<title></title>
</head>
<body>
<h3> </h3>
<form action='generate_quot_cust_edititems_save_1.php?tender_id=1400692'
class='single' id="cart" method='post' name='cart'>
<div class="base">
<div align="left">
<table border="1" cellpadding="3" cellspacing="3" style=
"border-collapse: collapse;" width="100%">
<tr>
<td id='addinput' width='34%'>154<input id='item_name0'
name='item_name[0]' placeholder='Packing Charges.'
size='70' type='text' value='Packing Charges.'></td>
</tr>
</table>
</div>
</div>
<div class="base">
<div align="left">
<table border="1" cellpadding="3" cellspacing="3" style=
"border-collapse: collapse;" width="100%">
<tr>
<td id='addinput' width='34%'>155<input id='item_name1'
name='item_name[1]' placeholder='Packing Charges.'
size='70' type='text' value='Packing Charges.'></td>
</tr>
</table>
</div>
</div>
<div class="base">
<div align="left">
<table border="1" cellpadding="3" cellspacing="3" style=
"border-collapse: collapse;" width="100%">
<tr>
<td id='addinput' width='34%'>156<input id='item_name2'
name='item_name[2]' placeholder='Packing Charges.'
size='70' type='text' value='Packing Charges.'></td>
</tr>
</table>
</div>
</div>
<div class="base">
<div align="left">
<table border="1" cellpadding="3" cellspacing="3" style=
"border-collapse: collapse;" width="100%">
<tr>
<td id='addinput' width='34%'>157<input id='item_name3'
name='item_name[3]' placeholder='Packing Charges.'
size='70' type='text' value='Packing Charges.'></td>
</tr>
</table>
</div>
</div>
<div class="base">
<div align="left">
<table border="1" cellpadding="3" cellspacing="3" style="border-collapse: collapse;" width="100%">
<tr>
<td id='addinput' width='34%'>158<input id='item_name4'
name='item_name[4]' placeholder='Packing Charges.'
size='70' type='text' value='Packing Charges.'></td>
</tr>
</table>
</div>
</div>
<div class="base">
<div align="left">
<table border="1" cellpadding="3" cellspacing="3" style=
"border-collapse: collapse;" width="100%">
<tr>
<td id='addinput' width='34%'>159<input id='item_name5'
name='item_name[5]' placeholder='Packing Charges.'
size='70' type='text' value='Packing Charges.'></td>
</tr>
</table>
</div>
</div>
<div class="base">
<div align="left">
<table border="1" cellpadding="3" cellspacing="3" style=
"border-collapse: collapse;" width="100%">
<tr>
<td id='addinput' width='34%'>160<input id='item_name6'
name='item_name[6]' placeholder='Packing Charges.'
size='70' type='text' value='Packing Charges.'></td>
</tr>
</table>
</div>
</div><br>
<input type='submit' value='--Update Data--' id='continue'/>
</form>
</body>
</html>
** ** 1。不要使用已棄用的'mysql_ *'函數。它們自PHP 5.5起棄用,並在PHP 7中完全刪除。請改用MySQLi或PDO。 ** 2 **。您可以[SQL注入](http://php.net/manual/en/security.database.sql-injection.php)開放,並且確實應該使用[Prepared Statements](http://php.net/manual) /en/mysqli.quickstart.prepared-statements.php),而不是串聯你的查詢(如果你使用MySQLi或PDO的話)。 –
你可以發佈HTML的問題,因爲它會是有用的找出你所犯的錯誤。 –
像下面這樣使用'SET' '$ q =「UPDATE poto_customer_items SET prod_description ='$ item_name'WHERE tender_id ='$ tender_id'和id ='$ value'「;' 我也建議你不要使用mysql_ *。使用mysqli或PDO。這些被推薦用於PHP 7,也有使用的mysqli像這麼多的好處 - 面向對象的接口, - 支持預處理語句, - 支持多個語句, - 支持交易, - 增強的調試功能, - 嵌入式服務器支持 – Manish