[英]Update SQL query - Set values to PHP string variable
这可能是一个非常琐碎的问题,但我已经为此苦苦挣扎了一段时间,并且还尝试在线查找答案并仍然出现错误。
尝试为PHP / MySql表单编写一个简单的UPDATE查询:
$sql="UPDATE mytable SET numericValue = '".$someid."', description = '".$sometext."' WHERE id='".$myid."' ";
虽然所有数值都可以传递和更新,但我无法正确地进行描述。 description列是VARCHAR,$ sometext是字符串,我无法正确转义/将其转义。
您应该利用sprintf,它通过提供占位符(%d代表小数,%s代表字符串)来避免字符串混淆。 有关更多信息,请参见手册 。
$sql= sprintf("UPDATE mytable SET numericValue = %d, description = '%s' WHERE id = %d", $someid, $sometext, $myid);
如果$ someText来自GET / POST / ..,则应在其周围包裹一个mysql_real_escape_string()以防止SQL注入(或使用PDO准备的语句)。
$sql="UPDATE mytable SET numericValue = '$someid' , description = '$sometext' WHERE id='$myid' ";
我认为您必须担心sql注入。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.