我用php显示我的图像。
function showImage( $id = 0 ){
$img = $this->db->where('id' , $id )->get('images');
$src = base_url('files').'/'.$img['filename'] ;
$ext = explode('.' , $img['filename']);
switch( end($ext) ) {
case "gif": $ctype="image/gif"; break;
case "png": $ctype="image/png"; break;
case "jpeg":
case "jpg": $ctype="image/jpg"; break;
default:
}
header('Content-type: ' . $ctype);
echo file_get_contents($src);
}
当我将地址直接放在浏览器中时它工作正常,但是当我用fancybox调用它时 它显示了一个非常大的屏幕,其中没有任何东西,我得到了很多
���F���!1AQ"aq� 2��#B��R�3�$r��Cb�%&4c�����������������������#�������!1AQa2"q������?��P�����������
在萤火虫中响应fancybox ajax请求。
答案 0 :(得分:0)
我遇到了类似的问题,发现fancybox并不能很好地与动态生成的图像配合使用。我的解决方案是在.htaccess中重写。我使用.net和isapi重写,但规则将类似。这就像
/([0-9])/([^ /。] +)。(jpg | gif | jpeg | png)$ /image.ashx?id=$1&filename=$2&extension=$3 < / p>
这对我有用。 (image.ashx将是你的php文件)
答案 1 :(得分:0)
我通过添加
解决了这个问题 "type":"image"
到fancybox配置