我有下面的PHP/HTML,使用while循環從global_settings
表更新行從形式文本框由while循環填充
<?php
$global_sql2="SELECT name, field, value FROM global_settings";
$global_rs2=mysql_query($global_sql2,$conn) or die(mysql_error());
while($global_result2=mysql_fetch_assoc($global_rs2))
{
echo '<tr>
<td><strong>'.$global_result2["name"].'</strong></td>
<td><input type="text" name="'.$global_result2["value"].'" size="50" value="'.$global_result2["value"].'" /></td>
</tr>';
}
?>
當表單提交填充表單域,每行在數據庫中需要使用在文本字段中鍵入的值進行更新。
例如,在數據庫中有與行以下:
name = Company Name
field = company_name
value = Company ABC
的張貼的值設置爲XYZ公司
所以SQL應該說:
`UPDATE tablename set value = 'Company XYZ' where field = 'company_name'`
但它沒有,說:
UPDATE tablename set value = 'Company XYZ' where field = 'company_name'
<?php
$global_sql3="SELECT name, field, value FROM global_settings";
$global_rs3=mysql_query($global_sql3,$conn) or die(mysql_error());
while($global_result3=mysql_fetch_assoc($global_rs3))
{
$sql="UPDATE global_settings set value = '".$_POST[$global_result3["field"]]."' where field = '".$_POST[$global_result3["value"]]."' ";
echo '<br><br>'.$sql;
$rs=mysql_query($sql,$conn) or die(mysql_error());
echo '<h3>Successfully Updated</h3>';
}
?>
的表稱爲global_settings
有那麼基本上,名和字段的字段千萬不要被
在global_settings
的value
場沒有更新的當值用戶只需值字段更改列(name, field, value)
文本字段被改變 - 林不知道是什麼問題
而我們又來了。 @charlie:請保留這個問題,並重新編輯它,如果有新的方面。但請不要刪除並重新發布一次又一次。 –
這裏有什麼問題嗎? – Strawberry
您無法以這種方式指定要更新的列。 – Strawberry