-1
PHP代码手册:您的SQL语法有错误;检查对应于你的MySQL服务器版本正确的语法使用附近的
if (isset($_REQUEST['SUBMIT'])) {
$name=mysql_real_escape_string($_REQUEST['menname']);
$dic=mysql_real_escape_string($_REQUEST['pagedec']);
$ID=$_REQUEST['id'];
$query=mysql_query("UPDATE `header_menu` SET `name`=$name,`contant`=$dic WHERE `id` = $ID");
if ($query == true) {
echo '<h1>Updated sucessfully. <a href="man_menu.php">Click</a> for manege header links</h1>';
}else{
echo mysql_error();
}
# code...
}else{
header('Location:404.php');
}
表单代码:
<div class="maincontent noright">
<div class="maincontentinner">
<ul class="maintabmenu">
<li class="current"><a href="">update header Menu [<?php echo $get_header_record_final['name']; ?>]</a></li>
</ul><!--maintabmenu-->
<div class="content">
<form class="stdform stdform2" id="banner" method="post" action="edit_header_done.php" enctype="multipart/form-data">
<p>
<label>Menu Name</label>
<span class="field"><input type="text" name="menname" class="longinput" value="<?php echo $get_header_record_final['name']; ?>"/></span>
</p>
<p>
<label>Menu Page contant</label>
<span class="field"><textarea id="body" name="pagedec"><?php echo $get_header_record_final['contant']; ?></textarea></span>
</p>
<p>
<label></label>
<span class="field">
<input type="hidden" name='id' value="<?php echo $ID ?>">
<button type="submit" class="stdbtn btn_black" style="opacity: 1;" name="SUBMIT">Update Now</button>
<input type="reset" class="reset radius2" value="Reset" /></span>
</p>
</form>
我从我的网站上创建我的管理面板。在这个网站我添加了一些先进功能;当我更新新的一页我得到这个错误:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 's need and maximizing stake holders value, AIF sees its customers as a business ' at line 1
字符串值中去单引号。 – mario
'mysql_real_escape_string'应该用于在[字符串文字](http://dev.mysql.com/doc/refman/5.5/en/string-literals.html)中使用的值;如果你不把它们放到字符串文字中,'mysql_real_escape_string'不会保护你免受SQL注入。就像在这种情况下一样。 – Gumbo
请不要使用'mysql_'。它已被弃用,并且不支持预准备语句。对准备好的语句或PDO使用'mysqli_'。这也可以避免这个问题。 –