我的weberp实战手册(四)mysql, pdf 的中文输出---Unicode
这真是一件令人抓狂的事情,花了我快三天的时间。 如何在Mysql和PDF输出中文,而且是繁简体并存。做法如下:1: 修改 ./includes 底下的header.inc
第10行,原本的iso-xxxx改成utf8
[font=宋体]header('Content-type: text/html; charset=' ._('[color=#ff0000]utf8[/color]'));[/font]
还有第18行,原本的iso-xxxx改成utf8
[font=宋体]echo '<meta http-equiv="Content-Type"c#ff0000">utf8[/font]') . '">';
这样所有的网页都是uft8了
2:把database里面filed的Collation需要用到中文的统统改成utf8_unicode_ci
3:在ConnectDB_mysql.inc第14行左右的 if (!mysql_select_db($_SESSION['DatabaseName'],$db))。。。。。程序区块的后面插入以下内容:
mysql_query("set names utf8;");
这样在phpmyadmin看到的资料就不是乱码了。可是还有个问题啊。。。输出PDF还是乱码。。。
4:输出PDF中文乱码,网路上看到很多解决方式
4.1:[font=宋体]http://www.fpdf.org/phorum/read.php?f=1&i=5142&t=5142,FPDF的论坛,内容太多,看到我头昏。也没找到解决方式[/font]
4.2:[font=宋体]http://blog.cjcht.com/index.php/henry/2007/09/06/ampa_yc_sesppdf,chinese-unicode.php要修改,而且class是一个extends一个,有点复杂,而且说明得不够详细。不过这位仁兄有个建议很好,引述如下:[/font]
[color=#ff0000]“建議使用AddUniGBhwFont()而不要用AddUniCNShwFont()。因為簡體字型裏包含了繁體字型,用AddUniGBhwFont()產生繁體中文內容的pdf文件也不會有問題。如果用AddUniCNShwFont()產生簡體中文內容的pdf文件,雖然閱讀器安裝了簡體字型,但是閱讀器會把它當成繁體文件,而使用繁體字型顯示,造成一些簡體字顯示不出來。“[/color]
4.3:[font=宋体][url=http://job.achi.idv.tw/?p=461]http://job.achi.idv.tw/?p=461[/url],后来用了这个方式,终于可以了。简单好用,只要两个档案,class.pdf.php,FPDF_Chinese.php..真是太棒了,,谢谢这位仁兄,做法如下:[/font]
5: 到[font=宋体][url=http://job.achi.idv.tw/?p=461]http://job.achi.idv.tw/?p=461[/url],下载[url=http://achi.idv.tw/modules.php?name=Downloads&d_op=getit&lid=12]includes.rar[/url] 。解压缩到./includes底下,,,然后开始来修改[/font]
5.1:打開class.pdf.php,把第21行的[font=宋体] if($_SESSION['Language'] =='zh_TW.UTF-8') 注解掉,,这个是多余的。[/font]
5.2:在第49行 和82 行[font=宋体][font=宋体]if($_SESSION['Language'] == [color=#ff0000]'zh_TW.UTF-8'[/color])改成你登入帐号的Language,,我就改成了[font=宋体]if($_SESSION['Language']== 'zh_HK')[/font][/font][/font]
5.3:把55行的[font=宋体]$this->AddUniCNShwFont('uni');注解掉,底下加一行[/font]
[font=宋体]$this->AddUniGBhwFont('uni'); 这就是上面那位仁兄建议的。用简体字型来显示繁简体。。真的有效哦。
[/font]
5.4:在第327行和337行的字形AdobeSongStd-Light ,改成AdobeSongStd-Light-Acro,,这样格式才会整齐,英文字不会挤在一起
如果要换字型,可以修改底下几个function,
[font=宋体]function AddUniCNShwFont[/font]
[font=宋体]function AddUniCNSFont[/font]
[font=宋体]function AddUniGBhwFont[/font]
[font=宋体]function AddUniGBFont[/font]
喝茶去了,累死我了。如果有疏漏之処,請不吝賜教
Part II
如果Client 端是Ubuntu 7.10 Gnome,打开PDF时是一片空白。。解决如下:
在weberp打完PO,系统预设用Evince打开PDF档,一片空白。应该是没有安装中文字型.还是安装Acrobatreader好了。用Synaptic package manager安装。中文字型要到这里来下载[url=http://www.adobe.com/tw/products/acrobat/acrrasianfontpack.html]http://www.adobe.com/tw/products/acrobat/acrrasianfontpack.html[/url],然后extract 到 /usr/lib/Adobe/Reader8/底下。进入/usr/lib/Adobe/Reader8/CHSKIT,然后执行 sudo ./INSTALL,系统会问你 Enter the location where you installed the Adobe Reader[/opt] ,输入 /usr/lib 就安装好了,繁体和日文也是这样做的
如果用Firefox打开PDF,系统会问你openwith,就选择others...然后选择 /usr/lib/Adobe/Reader8/bin/acroread-en即可
看到中文了吧,哈哈哈哈
Part III 另一个乱码问题:
在modify items detail的时候,发现Part description (short) 变成乱码,办法如下:
修改 Stocks.php 第550行
echo'<TR><TD>'. _('Part Description') . ' (' . _('short') .'):</TD><TD><inputtype="Text" name="Description" SIZE=52 MAXLENGTH=50 value="' .htmlentities($_POST['Description'],ENT_QUOTES,_('[color=#ff00]ISO-8859-1[/color]')) .'"></TD></TR>';
将 ISO-8859-1 改成 utf-8 。 不然,在mysql能看到中文,到這里会变乱码
参考资料:
1:[url=http://www.web745.com/article_html/2006/09/433.html]http://www.web745.com/article_html/2006/09/433.html[/url]
2:[font=宋体]http://job.achi.idv.tw/?p=461[/font]
3:[font=宋体]http://www.fpdf.org/phorum/read.php?f=1&i=5142&t=5142[/font]
4:[font=宋体]http://blog.cjcht.com/index.php/henry/2007/09/06/ampa_yc_sesppdf[/font]
[[i] 本帖最后由 daangenji 于 2008-9-7 11:33 编辑 [/i]] 把文件传上来,那网站注册不了 问题的确解决了。我把其它的文件传上来。这里感谢daangenji的不懈努力。
这个可以作为圣诞礼物了。
zn_cn是utf8的中文汉化
webERP3071utf8是数据库文件包含新的科目表。在308下还要运行3071to308的升级,weberp的sql目录下有。
除了上面dannagenji说的修改外,还要修改的文件有
includes\headre.inc ( 这是规定网页用utf8显示)
10 header('Content-type: text/html; charset=' . _('utf8'));
18 echo '<meta http-equiv="Content-Type" c>';
includes\ConnectDB_mysql.php (这里规定mysql的连接用utf8)
21 mysql_query("set names utf8;");
[[i] 本帖最后由 simonz 于 2007-12-25 10:18 编辑 [/i]] 谢谢Simonz把档案传上来,我刚刚才知道如何上传档案的,,,下次我会注意的.祝各位圣诞快乐!! 你也太强了。 谢谢Simonz把档案传上来 谢谢Simonz把档案传上来 希望能够解决乱码问题! :/fendou :/fendou 此篇一定要收藏 哈哈,,谢谢eremiter的支持,我用了weberp将近一年了。有些地方還是不符合需求,一直陆陆续续在修改,希望大家贡献聪明才智让开源的软件更完备 楼主用的是什么系统? 最近也開始接觸weberp看到這篇文章終於解決pdf亂瑪的問題了
目前還在學習中^^
要点数 下载不了
:/dahna 还是有点不解啊页:
[1]