2011-06-15 76 views
0

所以我有一些JPEG图像作为blob存储在mysql数据库中。数据库中的每一行都有一个longblob用于照片,另一个用于缩略图图像。我可以通过...检索图像...JQuery:通过ajax检索并显示作为blob存储的图像

<?php 
require_once("connect.php"); 
$id = $_GET['id']; 
if ($_GET['thumb'] === "true"){ 
    $query = "SELECT thumb, t_mime, t_size FROM images WHERE image_id = '".$id."';"; 
}else{ 
    $query = "SELECT data, mime, size FROM images WHERE image_id = '".$id."';"; 
} 

$result = mysql_query($query); 
$image = mysql_fetch_row($result); 

header('Content-length: ' . $image[2]); 
header('Content-type: ' . $image[1]); 
print $image[0]; 
?> 

并通过<img src="pull.php?id=300&thumb=false"...</img>调用它。现在,这仍然是服务器端的好处。但是,如何在用户获得html之后在页面上获取图像?我一直在使用jquery。什么到目前为止,我已经得到的是,页面显示缩略图列表,每个在alt文字#ID,那我就......

$("div.imgDiv").click(function(){ 
    image_id = $(this).children(".thumbnail").attr("alt"); 
    $.ajax({ 
     url : 'pull.php?id='+image_id+'&thumb=false', 
     success: function(data){ 
      $("img#main_photo").replaceWith("<img alt='welcome' src='"+data+"' id='main_photo'"); 
     } 
    }); 
}); 

好事是我得到的数据,该坏事是它似乎并不想将它转换成图像;我只是得到一串文字。我希望它用与我刚刚单击的缩略图对应的主照片替换主照片。

任何想法?

+0

为什么不创建一个'img'元素并将'src'属性指向脚本? – alex 2011-06-15 05:35:41

回答

0

您只需将一个img标签指向该网址以供浏览器处理即可。你不想把它加载到DOM中。

相关问题