本文目录一览:
- 1、下载了个PHP网站模板,可admin里面的所有文件都出现乱码,该怎么解决啊
- 2、我下载了个phpcms模版,代码编码是GBK简体,但是网页前台和后台有关这个模版的都是显示乱码,该怎么改呢?
- 3、PHP下载文件名乱码问题详解
- 4、网上下的PHP模板,在本地配置好的apache和mysql下预览打开都是乱码,
- 5、phpcms模板安装后出现乱码怎么办
下载了个PHP网站模板,可admin里面的所有文件都出现乱码,该怎么解决啊
使用浏览器打开是的乱码?看看下载的文件的编码和你网站的编码是否一致
我下载了个phpcms模版,代码编码是GBK简体,但是网页前台和后台有关这个模版的都是显示乱码,该怎么改呢?
如果phpcms是utf-8版的,就把模板改成utf-8的。
用dreamweaver等工具打开模板就可以更改编码。
PHP下载文件名乱码问题详解
通过把Content Type设置为application/octet stream 可以把动态生成的内容当作文件来下载 相信这个大家都会 那么用Content Disposition设置下载的文件名 这个也有不少人知道吧 基本上 下载程序都是这么写的 -php网上下的模板是乱码
header( Content Disposition: attachment; filename= $filename);print Hello! ;?
这样用浏览器打开之后 就可以下载document txt
但是 如果$filename是UTF 编码的 有些浏览器就无法正常处理了 比如把上面那个程序稍稍改一下
header( Content Disposition: attachment; filename= $filename);print Hello! ;?
把程序保存成UTF 编码再访问 IE 下载的文件名就会乱码 FF 下下载的文件名就只有 中文 两个字 Opera 下一切正常
输出的header实际上是这样子
Content Disposition: attachment; filename=中文 文件名 txt
其实按照RFC 的定义 多语言编码的Content Disposition应该这么定义
Content Disposition: attachment; filename*= utf %E %B %AD%E % % % %E % % %E %BB%B %E % % D txt
即
filename后面的等号之前要加 * filename的值用单引号分成三段 分别是字符集(utf ) 语言(空)和urlencode过的文件名 最好加上双引号 否则文件名中空格后面的部分在Firefox中显示不出来 注意urlencode的结果与php的urlencode函数结果不太相同 php的urlencode会把空格替换成+ 而这里需要替换成% -php网上下的模板是乱码
经过试验 发现几种主流浏览器的支持情况如下
IE attachment; filename=
FF attachment; filename= UTF 文件名
attachment; filename*= utf
O attachment; filename= UTF 文件名
Safari (Win) 貌似不支持?上述方法都不行
这样看来 程序必须得这样写才能支持所有主流浏览器
$encoded_filename = urlencode($filename);$encoded_filename = str_replace( + %
$encoded_filename);header( Content Type: application/octet stream );
if (preg_match( /MSIE/ $ua)) { header( Content Disposition: attachment;
filename= $encoded_filename );} else if (preg_match( /Firefox/ $ua))
{ header( Content Disposition: attachment; filename*= utf \ \ $filename );}
else { header( Content Disposition: attachment; filename= $filename );}print ABC ;?
lishixinzhi/Article/program/PHP/201311/21454
网上下的PHP模板,在本地配置好的apache和mysql下预览打开都是乱码,
查看 编码 设置字符集。
php html sql 都要设置成一样的 貌似现在UTF-8比较多
phpcms模板安装后出现乱码怎么办
查看页面编码,如果你phpcms程序是utf-8的那要求你的phpcms模版的编码也需要是utf-8,总之保存程序与模版的编码一致性。
页面不要用txt文档打开一定用Notepad++打开,这样保证phpcms模版不会因为txt打开而损害编码结构。