【发布时间】:2019-01-26 10:18:16
【问题描述】:
我正在尝试将 base64 编码的 dataURI 图像(通过 Ajax:post 发送)成功插入 MySQL 表的 BLOB 字段。目前正在填充该字段,但是当我显示图像时,它已损坏。
通过 Ajax 发送数据没有问题。
这是我的 PHP 代码(简化):
$encodedData = filter_var($_POST['encodedData'], FILTER_SANITIZE_STRING);
$encodedData = str_replace(' ','+',$encodedData);
$encodedData = substr($encodedData, strpos($encodedData, ",") + 1);
$decodedData = base64_decode($encodedData);
$doinsertphoto = mysql_query("INSERT INTO subscriber_photo (SubscriberId, Photo) VALUES ('" . $subscriber_id . "', '" . mysql_real_escape_string($decodedData) . "')") or die(mysql_error());
【问题讨论】:
-
找到它不工作的原因。不需要 imagecreatefromstring() 函数,我所要做的就是将 mysql_real_escape_string() 添加到数据库查询中。更新上面的代码。