Javascript从Base64组装图像?
您好,我在数据库中存储了一个图像,它看起来像这样:Javascript从Base64组装图像?,javascript,php,html,Javascript,Php,Html,您好,我在数据库中存储了一个图像,它看起来像这样: iVBORw0KGgoAAAANSUhEUgAAAVEAAACsCAYAAADCDZ8x...... 它的基础是64。我有以下PHP代码: <?php include_once "mysql_connect.php"; if(isset($_GET['id'])){ $id = mysql_real_escape_string($_GET['id']); $query = mysql_query("SELECT * FROM
iVBORw0KGgoAAAANSUhEUgAAAVEAAACsCAYAAADCDZ8x......
它的基础是64。我有以下PHP代码:
<?php
include_once "mysql_connect.php";
if(isset($_GET['id'])){
$id = mysql_real_escape_string($_GET['id']);
$query = mysql_query("SELECT * FROM `entree` WHERE `realID` = '$id'");
while($row = mysql_fetch_assoc($query)){
$imageData = $row[6];
$imageType = $row[3];
$imageData = base64_decode($imageData);
}
if($imageType == "image/png"){
header("content-type: image/png");
}else if($imageType == "image/jpeg"){
header("content-type: image/jpeg");
}else{}
if(!($imageData == null)){
echo $imageData;
}else{
echo $imageData;
}
}else{
}
?>
告诉broswer您正在使用数据uri。 使用数据uri的方式是
数据:[;字符集=][;base64],
在您的案例中不需要字符集,因此image src应该是-data:image/;base64,
注意分号和逗号。
忽略尖括号。它们只是为了让事情变得更清楚,而不是在代码中使用
顺便说一下,这不是很棒的代码,但已经足够好了。它易受XSS攻击
if(isset($_GET['id'])){
$id = mysql_real_escape_string($_GET['id']);
$query = mysql_query("SELECT * FROM `entree` WHERE `realID` = '$id'");
用作SRC值
-如果需要数据URI,则不要将二进制数据作为数据URI-显示HTML以及如何使用此PHP,因为不清楚您所说的用作图像中的SRC值是什么意思
我现在就做。当您直接导航到generateThumbnail64.php时,您在浏览器中得到了什么?id=
?您的$row[x]
将不起作用:RTM返回行[“userid”
$SRC=“generateThumbnail64.php?id=$realid”;代码>在哪里定义了$realid
?
if(isset($_GET['id'])){
$id = mysql_real_escape_string($_GET['id']);
$query = mysql_query("SELECT * FROM `entree` WHERE `realID` = '$id'");