我在文件中有以下php代码:
$figloc = $_GET['figrl'];
try
{
$image = new Imagick($figloc);
$image->setImageFormat("jpg");
$image->setImageColorSpace(5);
$image->writeImage("temp.jpg");
}
catch(Exception $e)
{
echo $e->getMessage();
}
和这样的jquery脚本:
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
figurelocation='temp.jpg';
var fightmlstring='<img src=\"'+figurelocation+'\">';
$('.figuredisplay').append(fightmlstring);
});
figuredisplay是一个div元素。 $ figloc value是磁盘上图像的绝对地址,如'/home/abc/def/ghi/jkl.tiff'。从适当的链接打开时,php文件显示错误消息“imagick无法打开文件/home/abc/def/ghi/jkl.tiff”。绝对地址会导致问题吗?
另外,当我将一个特定的tiff文件复制到我的目录时,为了查看绝对地址是否有问题,想象力有可能读取该文件,但未能创建temp.jpg
unable to open image `/var/www/temp.jpg @ error/blob.c/OpenBlob/2489
有谁能指出我做错了什么?
答案 0 :(得分:0)
好的,我发现了问题。这真是个傻瓜。我正在写作,所以面临同样问题的其他人可能会受益。
而不是
$image = new Imagick($figloc);
写:
$abc= substr ( $figloc , 1, strlen($figloc)-2);
$image = new Imagick($figloc);
因此,删除了figloc字符串中的单引号。真的很傻:-)