2017-07-16 84 views
1

我已经存储了QR码的图像在我的数据库中的数据,我用这个例子链接下载:下载的文件不工作

http://example.com/module/index.php?QRCodeFile=1&fileID=1 

现在,我想下载一个文件夹内的这张照片稍后使用它来创建PDF。

我的问题是,当我使用这个代码来下载一个文件夹中的图片:

$url = 'http://example.com/module/index.php?QRCodeFile=1&fileID=1'; 
$img = 'assets/temp/qr.png'; 
file_put_contents($img, file_get_contents($url)); 

的文件下载,但是当每次我试图打开我得到这个消息:“我们无法打开此文件“。

+0

它可能需要是矢量格式,即pdf,svg,eps; – slevy1

+1

谁给出了该错误消息?这肯定不是任何基本组件给出的信息,例如http服务器或php引擎。相反,这听起来像一些框架或你自己的代码...所以...我建议你给我们更多关于你的实际设置的信息... – arkascha

+0

检查'file_put_contents'的返回值来查看有多少个字节(或者在全部)已写入该文件。然后检查下载的数据实际上是否为图像,而不是其他HTML代码。你从哪里得到“我们无法打开这个文件”的信息(这是你得到的正确的错误信息)? – Progman

回答

0

这个困境是由于一个问题,如果MS继续在Windows 10中包含Microsoft Office图片管理器,就可以避免这个问题。我在Windows XP中使用它,它可以轻松地打开QR码图像作为“.png “文件。但是,无论出于何种原因,MS决定从Windows 10中删除该程序;看到here所以,好消息是你可以安装它;见here。另外,在XP中,我可以右键单击图像文件图标,如果选择了画图,该程序将打开文件。这可能可以在Windows 10中运行 - 您必须尝试一下,看看自己的b/c显然MS也对该程序进行了更改。最后,MS有一个可能会让你感兴趣的工具;见here