PHP 保存到桌面的代码,怎么加ICO图标跟乱码问题呢

WBOY
Release: 2016-06-23 13:20:18
Original
2642 people have browsed it

$shortCut = "[InternetShortcut]URL=http://www.xxx.com/?zuomian2015IDList=[{000214A0-0000-0000-C000-000000000046}]Prop3=19,2";Header("Content-type: application/octet-stream");header("Content-Disposition: attachment; filename=某某网站.url;");echo $shortCut;
Copy after login


保存为UTF8模式下,CHROME下载正常,IE9下就某某网站变成乱码了
保存为ANSI格式下,CHROME下载某某网站变成乱码了,IE9又没变正常了


回复讨论(解决方案)

$shortCut = "[InternetShortcut]URL=http://www.xxx.com/?zuomian2015IDList=[{000214A0-0000-0000-C000-000000000046}]Prop3=19,2";Header("Content-type: application/octet-stream");$filename = '某某网站.url';$user_agent = $_SERVER['Http_User_agent'];$encode_filename = rawurlencode($filename);if(preg_match("/MSIE/", $user_agent)){	header('content-disposition:attachment; filename="'.$encode_filename.'"');}else if(preg_match("/Firefox/", $user_agent)){	header("content-disposition:attachment; filename*=\"utf8''".$filename.'"');}else{	header('content-disposition:attachment; filename="'.$filename.'"');}echo $shortCut;
Copy after login
Copy after login

$shortCut = "[InternetShortcut]URL=http://www.xxx.com/?zuomian2015IDList=[{000214A0-0000-0000-C000-000000000046}]Prop3=19,2";Header("Content-type: application/octet-stream");$filename = '某某网站.url';$user_agent = $_SERVER['Http_User_agent'];$encode_filename = rawurlencode($filename);if(preg_match("/MSIE/", $user_agent)){	header('content-disposition:attachment; filename="'.$encode_filename.'"');}else if(preg_match("/Firefox/", $user_agent)){	header("content-disposition:attachment; filename*=\"utf8''".$filename.'"');}else{	header('content-disposition:attachment; filename="'.$filename.'"');}echo $shortCut;
Copy after login
Copy after login



可以加个ICO图标吗?

IconFile=图标路径 加这个参数

IconFile=图标路径 加这个参数


$shortCut = "[InternetShortcut]URL=http://www.xxx.com/?zuomian2015IconFile=/favicon.icoIDList=[{000214A0-0000-0000-C000-000000000046}]Prop3=19,2";Header("Content-type: application/octet-stream");header("Content-Disposition: attachment; filename=某某网站.url;");echo $shortCut;
Copy after login



这样无效,没反应

要用http://的

要用http://的


$shortCut = "[InternetShortcut]URL=http://www.xxx.com/?zuomian2015IconFile=http://c.csdnimg.cn/public/favicon.icoIDList=[{000214A0-0000-0000-C000-000000000046}]Prop3=19,2";Header("Content-type: application/octet-stream");header("Content-Disposition: attachment; filename=某某.url;");echo $shortCut;
Copy after login


还是无效

写法本身没错,你现在实际显示的图标是浏览器图标吧?

你改成这样看看
IconFile=http://www.vcoo.cc/favicon.ico

原因是图标格式不合要求

参考: http://blog.csdn.net/fdipzone/article/details/50423613

写法本身没错,你现在实际显示的图标是浏览器图标吧?

你改成这样看看
IconFile=http://www.vcoo.cc/favicon.ico

原因是图标格式不合要求



换成这个ico一样也不行,还是显示的是浏览器图标,就是CHROME图标了

参考: http://blog.csdn.net/fdipzone/article/details/50423613



感谢写了篇长文,但是经测试还是不能正常显示图标,不知道会否跟浏览器跟系统有关呢

那我就不知知道了
在我这里
IconFile=http://c.csdnimg.cn/public/favicon.ico 不行
IconFile=http://www.vcoo.cc/favicon.ico 可以

写法本身没错,你现在实际显示的图标是浏览器图标吧?

你改成这样看看
IconFile=http://www.vcoo.cc/favicon.ico

原因是图标格式不合要求



大婶,你还没退休啊?    新年快乐哈  

找到原因了。如果你保存的网站.url是在收藏夹中收藏过的。就会显示到图标,否则不能显示图标。

因为那个图标是读浏览器缓存的。如果缓存中没有这个图标,则不显示。

例如你要做一个百度的
那么首先要收藏百度在浏览器。

然后IconFile=百度的favicon地址

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template