[英]Update field value in mysql table using php programming
$id = $_REQUEST["Uid"];
$query = "update prd set name='".$_POST['nm']."', char='".$_POST['ch']."', price='".$_POST['pr']."', sp_pri='".$_POST['spr']."', is_eli='".$_POST['enb']."', upd='".$_POST['ud']."', img='".$_FILES['img']['name']."', c_id='".$_POST['cid']."' where id=".$id;
$r = mysql_query($query) or die(mysql_error());
if ($r == 1)
echo "Record Updated";
我從此查詢中收到以下錯誤,但不確定如何解決-SQL對我來說看起來不錯! 我究竟做錯了什么?
您的SQL語法有誤; 檢查與您的MySQL服務器版本相對應的手冊以獲取正確的語法,以在'char ='b',price ='150',sp_pri ='100',is_eli ='Yes',upd ='mon附近使用七月23 2012 17 :23:24'在第1行
char
是SQL中的保留字。 如果您將此類關鍵字用作列名,則必須將它們括在反引號中(因為您應該始終對列名進行處理)!
$query="update prd set `name`='".$_POST['nm']."', `char`='".$_POST['ch']."', `price`='".$_POST['pr']."', `sp_pri`='".$_POST['spr']."', `is_eli`='".$_POST['enb']."', `upd`='".$_POST['ud']."', `img`='".$_FILES['img']['name']."', `c_id`='".$_POST['cid']."' where `id`=".$id;
此外,通過將$_POST
變量直接添加到查詢中而不先清理它們,您就可以使系統遭受任何形式的攻擊,這些攻擊會危害您的數據和網站。
除了Sirko的建議外,在upd
字段的分配中(這是一個日期),您應該使用STR_TO_DATE
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.