我有一个php脚本,其中包含一个BLOB session image
。我想将其插入BLOB列中。
我的错误代码
<?php
require 'config.php';
$userName = "John";
$aVatar = $_SESSION['userImage']; //[BLOB] - from MySql BLOB image
$query = "INSERT INTO `users`(`username`, `avatar`) VALUES ('$userName', '$aVatar')";
if($conn->query($query) == TRUE){
echo "Done!";
}
?>
答案 0 :(得分:2)
这里的问题是,如果变量$_SESSION['userImage']
包含任何'
,则查询将无效。因此,您应该使用mysql_escape_string()
对其进行消毒:
$query = "INSERT INTO `users`(`username`, `avatar`) VALUES ('$userName', '" . mysql_escape_string($_SESSION['userImage']) . "')";
您还可以在分配blob变量时使用addslashes()
来解决此问题:
$aVatar = addslashes($_SESSION['userImage']);