<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-28240738</id><updated>2012-02-11T04:52:13.071+08:00</updated><category term='PHP实用技术'/><category term='Koobi 相关'/><category term='php程序'/><title type='text'>新鲜感--海鹰的共享空间</title><subtitle type='html'>海鹰的技术爱好共享, 包括程序代码, 设计. 新鲜的.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>13</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-28240738.post-8896751667267146318</id><published>2010-04-19T14:16:00.001+08:00</published><updated>2010-04-19T14:17:43.854+08:00</updated><title type='text'>搬家</title><content type='html'>由于blogspot.com在国内长期无法防问. 我也不是专业翻墙者,所以在国内卖个了空间架了个简简单单的博客, 一些技术爱好包括koobi的研究,就搬到新家去了. 这里就不再更新了. 没办法, 大国顺民, 不折腾. 并,本职工作繁忙, 恕我不能对我所释出的一些程序作服务或答疑解惑.&lt;br /&gt;祝阅读者愉快!&lt;br /&gt;&lt;br /&gt;博客新地址: &lt;a href="http://www.babalele.com/typecho"&gt;http://www.babalele.com/typecho&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-8896751667267146318?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://babalele.com/typecho' title='搬家'/><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/8896751667267146318/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=8896751667267146318&amp;isPopup=true' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/8896751667267146318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/8896751667267146318'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2010/04/blog-post.html' title='搬家'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28240738.post-5999099498722361171</id><published>2009-03-28T22:18:00.001+08:00</published><updated>2009-04-05T21:07:22.486+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Koobi 相关'/><title type='text'>Koobi Pro v7 build 1.05</title><content type='html'>koobi 7.1.05的前台翻译全部完成. 并已国际化. 尚末发现重大错误. 欢迎反馈.(对这个程序精确的过程执行越来越爱不释手)&lt;br /&gt;后台还没有译.&lt;br /&gt;&lt;br /&gt;[&lt;span style="color: rgb(255, 0, 0);"&gt;2008.12.28更新&lt;/span&gt;]&lt;br /&gt;&lt;br /&gt;前后台都已翻译完成.&lt;br /&gt;&lt;br /&gt;词条翻译中遵循这样几个原则: 一, 表意清楚, 与程序功能匹配(因此所有词条出现的页面都测试运行过); 二, 符合中文表达习惯. 比如德国的FSK-18, 是一种内容分级制度, 中国没有对应制度, 译为"不向未满18岁青少年开放内容"我想是准确和便于理解的. 三, 页面呈现优美. 比如菜单词条尽量整齐, 单行表格中的词条尽量不换行, 不把表格撑大等等.&lt;br /&gt;&lt;br /&gt;前台词条也有再作一些调整，一是为表意更清晰明确，更符合汉语环境的理解习惯，二是为了与后台词条最大程度的统一。&lt;br /&gt;&lt;br /&gt;在翻译的过程中，有几个地方真让我犯难。&lt;br /&gt;一是cheats这个模块应该如何理解。它有文章介绍，有文件下载，有文件适用平台。原德语和英文文档中将这一模块名称定义为“Tip&amp;amp;Trick”, 直译为中文“小贴士&amp;amp;窍门”(我曾经在filefox的英文官方网站有这样一个栏目，中文官方网站对应栏目就是译为贴士与技巧，但实际呈现内容与koobi此处的设计有较大差别)或更IT一点的“攻略”，都跟实际内容好像不太搭。实际内容怎么看都就是一个软件下载功能模块！最后该模块中文名称我定为“软件”。是否恰当，仁者见仁了。&lt;br /&gt;另外一个地方就是article。字面很好理解。但此模块功能与字面并不太一致。实际中，article这个模块呈现的内容也是有简介，有版本之分，有适用平台，有系统需求等等，但是没有文件下载，代之以购买链接。总而言之与cheats模块很接近--在后台也是列在同一个管理区块中，词条变量名前缀也是同样的（game_）。直译为“文章”肯定不贴切。我想来想去，觉得作者写此模块的本意是放置软件测评文章的。有兴趣的朋友可以去体验一下。因此最后（此次更新后台语言时同时更新了前台语言）把这个模块中文名称定为了“测试文章”。&lt;br /&gt;&lt;br /&gt;另外，在语言包中自己陆陆续续发现有一些错别字（有时打得太快了），现在释出的文件中也必定还有我没发现的错别字，或是较为晦涩的地方，或是表意有误差的地方，总之，就是我们常在书籍前言中看到的一句话：“由于时间仓促，加之水平有限，错漏之处在所难免，恳请同好和读者批评指正.”&lt;br /&gt;&lt;br /&gt;[&lt;span style="color: rgb(255, 0, 0);"&gt;2009.03.28更新&lt;/span&gt;]&lt;br /&gt;&lt;br /&gt;修正: 后台"商店信息"无法写入(原程序bug: koobi7_shop_einstellungen表中缺失Fsk18字段). --感谢网友Sophina&lt;br /&gt;&lt;br /&gt;&lt;a href="http://cid-399763c1a4359817.skydrive.live.com/self.aspx/.Public/koobi/KoobiPro.v7.Build.1.05.UTF-8.rar" target="_blank"&gt;Koobi Pro v7 build 1.05 下载&lt;/a&gt;[skydrive] [2009.03.28更新]&lt;br /&gt;&lt;br /&gt;玩得开心! 欢迎交流反馈.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-5999099498722361171?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/5999099498722361171/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=5999099498722361171&amp;isPopup=true' title='19 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/5999099498722361171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/5999099498722361171'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2008/12/koobi-pro-v7-build-105.html' title='Koobi Pro v7 build 1.05'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><thr:total>19</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28240738.post-8888405988446483380</id><published>2009-01-12T23:53:00.009+08:00</published><updated>2009-01-18T23:30:20.024+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Koobi 相关'/><title type='text'>为Koobi论坛增加附件图片显示功能</title><content type='html'>&lt;p&gt;从Koobi声名雀起的4.2版开始，一直到现在的7.1.20版，它的论坛一直不显示图片附件，任何附件只显示一个下载链接，不知用意何在。技术上不存在难度。这里写出来，供有兴趣的朋友参考。并提供了修改好的补丁文件，为懒人直接下载使用。&lt;br /&gt;&lt;br /&gt;补丁功能：&lt;br /&gt;1. 原论坛附件仅显示下载链接, 本补丁增加图片（JPG,GIF,PNG）显示&lt;br /&gt;2. 控制图片显示尺寸, 宽度大于800px的图片自动调整为800px宽度显示(高度自动按比例调整)&lt;br /&gt;&lt;br /&gt;手动修改指南(手动修改前建议备份您的原始文件)&lt;br /&gt;&lt;br /&gt;1. 打开/system/showtopic.php, 在第380行(while ( $file = $r_file-&gt;fetchrow()) { )之后插入:&lt;br /&gt;&lt;br /&gt; if(eregi("jpg|gif|png$",$file-&gt;orig_name)){&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$file-&gt;img = $file-&gt;filename;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$size = GetImageSize("uploads/attachment/$file-&gt;filename");&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$file-&gt;imgWidth = $size[1]; //Get image width&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if($size[1] &gt;800){$file-&gt;imgWidth = 800;} //you can define as other value&lt;br /&gt; } else {&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$file-&gt;img = "";&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt;  保存关闭.&lt;br /&gt;&lt;br /&gt;2. 打开/theme/standard/forums/showtopic.tpl,(请将standard替换为您使用的模板文件夹名称), 在第97行( {foreach from=$post-&gt;files item=file name="post"} )之后插入:&lt;br /&gt;&lt;br /&gt;{if $file-&gt;img}&lt;br /&gt; &amp;lt;tr&amp;gt;&lt;br /&gt; &amp;lt;td colspan="2"&amp;gt;&amp;lt;img src="uploads/attachment/{$file-&gt;img}" width="{$file-&gt;imgWidth}px" alt="" /&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;{/if}&lt;br /&gt;&lt;br /&gt;保存关闭.&lt;br /&gt;&lt;br /&gt;补丁下载：&lt;a href="http://cid-399763c1a4359817.skydrive.live.com/self.aspx/.Public/koobi/Koobi.Patch.7105.01.rar" target="_blank"&gt;Koobi_Patch_7105_01.rar&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;祝玩得开心！&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-8888405988446483380?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/8888405988446483380/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=8888405988446483380&amp;isPopup=true' title='22 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/8888405988446483380'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/8888405988446483380'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2009/01/koobi.html' title='为Koobi论坛增加附件图片显示功能'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><thr:total>22</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28240738.post-5903856195252398725</id><published>2008-10-29T14:23:00.006+08:00</published><updated>2008-11-04T20:39:13.650+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Koobi 相关'/><category scheme='http://www.blogger.com/atom/ns#' term='PHP实用技术'/><title type='text'>对koobi中字符过滤暨正则表达式的思考</title><content type='html'>Koobi中大量使用了正则表达式来验证用户输入的合作法性和对字符进行过滤. 然而我在学习的过程中有两点感到似乎可以再提高:&lt;br /&gt;&lt;br /&gt;一是对邮件地址的合法性验证. 请看这一行:&lt;br /&gt;if(@!preg_match("/^[ -._A-Za-zÀ-ÖØ-öø-ÿ0-9-]+(\.[_A-Za-zÀ-ÖØ-öø-ÿ0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$/", $_POST['reg_email']))  $error[] = $GLOBALS['config_vars']['RegE_wrongmail'];&lt;br /&gt;这是class/class.login.php第453行, 对注册email进行验证. 注意*@前面的两节, 我不明白@前面为何允许À-ÖØ-öø-ÿ区间字符开头并在其中可包含这些字符(邮件允许包含德文字符吗). 我认为所有邮件验证应该去掉À-ÖØ-öø-ÿ区间. 也是最经典的正则表达式验证email地址的写法:&lt;br /&gt;preg_match("/^[ -._A-Za-z0-9-]+(\.[_A-Za-z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$/", $_POST['reg_email'])&lt;br /&gt;&lt;br /&gt;二是对用户输入的安全字符过滤. 我们还是来看他是怎么写的:&lt;br /&gt;if(!empty($_POST['reg_username']) &amp;amp;&amp;amp; @preg_match("/[^ ._A-Za-zÀ-ÖØ-öø-ÿ0-9-]/", $_POST['reg_username']))  $error[] = $GLOBALS['config_vars']['RegE_wrongUsername'];&lt;br /&gt;这行的意思是如果reg_username非空并且包含 ._A-Za-zÀ-ÖØ-öø-ÿ0-9-区间以外的字符, 就报错终止. 如果光是德国人用, 没问题, 因为德国人能够输入的也就是这几个区间的字符. 可我们是光荣的中国人. 问题来了: 中文字符不在此区间内. 而且整个软件充斥着A-Za-zÀ-ÖØ-öø-ÿ0-9这个字符串作为允许输入的字符范围.&lt;br /&gt;我的建议暨我的修改作业做法是: 在全局配置文件中定义一个代表中文区间的字符串, 再在所有涉及字符过虑或验证的正则表达式中代入这个字符串.&lt;br /&gt;如:&lt;br /&gt;在db.config.php中增加[build 05版中将会在安装过程中自动完成]: define("CPATTERN", "À-ÖØ-öø-ÿ".chr(0xa1)."-".chr(0xff)); //为何用常量? 它更方便穿透类和函数.  chr(0xa1)-chr(0xff)涵盖中文区间. 之前曾尝试\xa1-\xff, 总有些测试无法通过. 后来选用chr(0xa1)-chr(0xff)才没出现问题. chr(0xa1)-chr(0xff)涵盖中文字符区间是在php手册中出现的, 所以, 应可放心, 我的大量测试也还没有捕捉到例外. 这里我将德文字符也作为允许范围--毕竟是它的祖国嘛.  [11.04 编辑]&lt;br /&gt;在应用语句中改为(以上面引用的语句为例):&lt;br /&gt;if(!empty($_POST['reg_username']) &amp;amp;&amp;amp; @preg_match("/[^ ._A-Za-z".CPATTERN."0-9-]/", $_POST['reg_username']))  $error[] = $GLOBALS['config_vars']['RegE_wrongUsername'];&lt;br /&gt;&lt;br /&gt;对于正则表达式的理解, 网上的教程多如牛毛, 不赘述. 贴一张完整参考列表, 来自于wikipedia. 并推荐两个学习网址: &lt;a href="http://zh.wikipedia.org/w/index.php?title=%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F&amp;amp;variant=zh-cn"&gt;wikipedia&lt;/a&gt;, &lt;a href="http://www.regexlab.com/zh/regref.htm"&gt;正则表达工作室&lt;/a&gt;.&lt;br /&gt;&lt;style&gt;#rege td,th{border:1px solid #000}&lt;/style&gt;&lt;span style="font-weight: bold;"&gt;在PCRE中元字符及其在正则表达式上下文中的行为的完整列表：&lt;/span&gt;&lt;br /&gt;&lt;table id="rege"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;字符&lt;/th&gt; &lt;th&gt;描述&lt;/th&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\&lt;/th&gt; &lt;td&gt;将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如，“n”匹配字符“n”。“\n”匹配一个换行符。序列“\\”匹配“\”而“\(”则匹配“(”。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;^&lt;/th&gt; &lt;td&gt;匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性，^也匹配“\n”或“\r”之后的位置。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;$&lt;/th&gt; &lt;td&gt;匹配输入字符串的结束位置。如果设置了RegExp对象的Multiline属性，$也匹配“\n”或“\r”之前的位置。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;*&lt;/th&gt; &lt;td&gt;匹配前面的子表达式零次或多次。例如，zo*能匹配“z”以及“zoo”。*等价于{0,}。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;+&lt;/th&gt; &lt;td&gt;匹配前面的子表达式一次或多次。例如，“zo+”能匹配“zo”以及“zoo”，但不能匹配“z”。+等价于{1,}。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;?&lt;/th&gt; &lt;td&gt;匹配前面的子表达式零次或一次。例如，“do(es)?”可以匹配“do”或“does”中的“do”。?等价于{0,1}。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;{&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;}&lt;/th&gt; &lt;td&gt;&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;是一个非负整数。匹配确定的&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;次。例如，“o{2}”不能匹配“Bob”中的“o”，但是能匹配“food”中的两个o。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;{&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;,}&lt;/th&gt; &lt;td&gt;&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;是一个非负整数。至少匹配&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;次。例如，“o{2,}”不能匹配“Bob”中的“o”，但能匹配“foooood”中的所有o。“o{1,}”等价于“o+”。“o{0,}”则等价于“o*”。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;{&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;,&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;m&lt;/span&gt;}&lt;/th&gt; &lt;td&gt;&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;m&lt;/span&gt;和&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;均为非负整数，其中&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;&lt;=&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;m&lt;/span&gt;。最少匹配&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;次且最多匹配&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;m&lt;/span&gt;次。例如，“o{1,3}”将匹配“fooooood”中的前三个o。“o{0,1}”等价于“o?”。请注意在逗号和两个数之间不能有空格。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;?&lt;/th&gt; &lt;td&gt;当该字符紧跟在任何一个其他限制符(*,+,?,{&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;},{&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;,},{&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;,&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;m&lt;/span&gt;})后面时，匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串，而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如，对于字符串“oooo”，“o+?”将匹配单个“o”，而“o+”将匹配所有“o”。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;.&lt;/th&gt; &lt;td&gt;匹配除“\&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;”之外的任何单个字符。要匹配包括“\&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;”在内的任何字符，请使用像“[.\&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;]”的模式。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;(pattern)&lt;/th&gt; &lt;td&gt;匹配pattern并获取这一匹配。所获取的匹配可以从产生的Matches集合得到，在VBScript中使用SubMatches集合，在JScript中则使用$0…$9属性。要匹配圆括号字符，请使用“\(”或“\)”。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;(?:pattern)&lt;/th&gt; &lt;td&gt;匹配pattern但不获取匹配结果，也就是说这是一个非获取匹配，不进行存储供以后使用。这在使用“或”字符(|)来组合一个模式的各个部分是很有用。例如，“industr(?:y|ies)就是一个比”industry|industries'更简略的表达式。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;(?=pattern)&lt;/th&gt; &lt;td&gt;正向预查，在任何匹配pattern的字符串开始处匹配查找字符串。这是一个非获取匹配，也就是说，该匹配不需要获取供以后使用。例 如，“Windows(?=95|98|NT|2000)”能匹配“Windows2000”中的“Windows”，但不能匹配 “Windows3.1”中的“Windows”。预查不消耗字符，也就是说，在一个匹配发生后，在最后一次匹配之后立即开始下一次匹配的搜索，而不是从 包含预查的字符之后开始。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;(?!pattern)&lt;/th&gt; &lt;td&gt;负向预查，在任何不匹配pattern的字符串开始处匹配查找字符串。这是一个非获取匹配，也就是说，该匹配不需要获取供以后使用。例如 “Windows(?!95|98|NT|2000)”能匹配“Windows3.1”中的“Windows”，但不能匹配“Windows2000”中 的“Windows”。预查不消耗字符，也就是说，在一个匹配发生后，在最后一次匹配之后立即开始下一次匹配的搜索，而不是从包含预查的字符之后开始&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;x|y&lt;/th&gt; &lt;td&gt;匹配x或y。例如，“z|food”能匹配“z”或“food”。“(z|f)ood”则匹配“zood”或“food”。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;[xyz]&lt;/th&gt; &lt;td&gt;字符集合。匹配所包含的任意一个字符。例如，“[abc]”可以匹配“plain”中的“a”。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;[^xyz]&lt;/th&gt; &lt;td&gt;负值字符集合。匹配未包含的任意字符。例如，“[^abc]”可以匹配“plain”中的“p”。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;[a-z]&lt;/th&gt; &lt;td&gt;字符范围。匹配指定范围内的任意字符。例如，“[a-z]”可以匹配“a”到“z”范围内的任意小写字母字符。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;[^a-z]&lt;/th&gt; &lt;td&gt;负值字符范围。匹配任何不在指定范围内的任意字符。例如，“[^a-z]”可以匹配任何不在“a”到“z”范围内的任意字符。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\b&lt;/th&gt; &lt;td&gt;匹配一个单词边界，也就是指单词和空格间的位置。例如，“er\b”可以匹配“never”中的“er”，但不能匹配“verb”中的“er”。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\B&lt;/th&gt; &lt;td&gt;匹配非单词边界。“er\B”能匹配“verb”中的“er”，但不能匹配“never”中的“er”。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\cx&lt;/th&gt; &lt;td&gt;匹配由x指明的控制字符。例如，\cM匹配一个Control-M或回车符。x的值必须为A-Z或a-z之一。否则，将c视为一个原义的“c”字符。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\d&lt;/th&gt; &lt;td&gt;匹配一个数字字符。等价于[0-9]。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\D&lt;/th&gt; &lt;td&gt;匹配一个非数字字符。等价于[^0-9]。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\f&lt;/th&gt; &lt;td&gt;匹配一个换页符。等价于\x0c和\cL。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\n&lt;/th&gt; &lt;td&gt;匹配一个换行符。等价于\x0a和\cJ。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\r&lt;/th&gt; &lt;td&gt;匹配一个回车符。等价于\x0d和\cM。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\s&lt;/th&gt; &lt;td&gt;匹配任何空白字符，包括空格、制表符、换页符等等。等价于[\f\n\r\t\v]。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\S&lt;/th&gt; &lt;td&gt;匹配任何非空白字符。等价于[^\f\n\r\t\v]。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\t&lt;/th&gt; &lt;td&gt;匹配一个制表符。等价于\x09和\cI。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\v&lt;/th&gt; &lt;td&gt;匹配一个垂直制表符。等价于\x0b和\cK。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\w&lt;/th&gt; &lt;td&gt;匹配包括下划线的任何单词字符。等价于“[A-Za-z0-9_]”。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\W&lt;/th&gt; &lt;td&gt;匹配任何非单词字符。等价于“[^A-Za-z0-9_]”。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\x&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;&lt;/th&gt; &lt;td&gt;匹配&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;，其中&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;为十六进制转义值。十六进制转义值必须为确定的两个数字长。例如，“\x41”匹配“A”。“\x041”则等价于“\x04”&amp;amp;“1”。正则表达式中可以使用ASCII编码。.&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;num&lt;/span&gt;&lt;/th&gt; &lt;td&gt;匹配&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;num&lt;/span&gt;，其中&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;num&lt;/span&gt;是一个正整数。对所获取的匹配的引用。例如，“(.)\1”匹配两个连续的相同字符。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;&lt;/th&gt; &lt;td&gt;标识一个八进制转义值或一个向后引用。如果\&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;之前至少&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;个获取的子表达式，则&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;为向后引用。否则，如果&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;为八进制数字(0-7)，则&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;为一个八进制转义值。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;nm&lt;/span&gt;&lt;/th&gt; &lt;td&gt;标识一个八进制转义值或一个向后引用。如果\&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;nm&lt;/span&gt;之前至少有&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;nm&lt;/span&gt;个获得子表达式，则&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;nm&lt;/span&gt;为向后引用。如果\&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;nm&lt;/span&gt;之前至少有&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;个获取，则&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;为一个后跟文字&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;m&lt;/span&gt;的向后引用。如果前面的条件都不满足，若&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;和&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;m&lt;/span&gt;均为八进制数字(0-7)，则\&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;nm&lt;/span&gt;将匹配八进制转义值&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;nm&lt;/span&gt;。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;nml&lt;/span&gt;&lt;/th&gt; &lt;td&gt;如果&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;为八进制数字(0-3)，且&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;m和l&lt;/span&gt;均为八进制数字(0-7)，则匹配八进制转义值&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;nm&lt;/span&gt;l。&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;th style="text-align: center;"&gt;\u&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;&lt;/th&gt; &lt;td&gt;匹配&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;，其中&lt;span style="font-style: italic;font-family:Times New Roman;" &gt;n&lt;/span&gt;是一个用四个十六进制数字表示的Unicode字符。例如，\u00A9匹配版权符号（©）。&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-5903856195252398725?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/5903856195252398725/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=5903856195252398725&amp;isPopup=true' title='2 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/5903856195252398725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/5903856195252398725'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2008/10/koobi_29.html' title='对koobi中字符过滤暨正则表达式的思考'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28240738.post-2448477644331785612</id><published>2008-10-27T19:55:00.002+08:00</published><updated>2008-10-27T20:13:33.664+08:00</updated><title type='text'>skype官方版使用tom-skype国内卡方法</title><content type='html'>&lt;p&gt;想用skype打电话, 在tom.com上买了一张"国内卡"试试. 不能打. 问tom的客服, 说是因为我用的skype版本不对. 要下载tom-skype版本的才能用. 又有广告又加了好多非官方的东西, 简直像个流氓软件, 真是不想用它. google一下, 发现一个方法可以让skype官方版本使用tom的国内卡, 一试还真有用.&lt;br /&gt;&lt;br /&gt;引用:&lt;br /&gt;非TOM-Skype版本的国内卡长话通拨号方法：&lt;br /&gt;拨打手机号码：0099008668033+0+手机号码&lt;br /&gt;拨打座机号码：0099008668033+区号（不要去0)+电话号码&lt;br /&gt;如示例：&lt;br /&gt;拨打手机方式: 0099008668033013917497583&lt;br /&gt;拨打座机方式: 009900866803302161021281&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-2448477644331785612?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.skypebbs.com/viewtopic.php?t=6726' title='skype官方版使用tom-skype国内卡方法'/><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/2448477644331785612/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=2448477644331785612&amp;isPopup=true' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/2448477644331785612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/2448477644331785612'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2008/10/skypetom-skype.html' title='skype官方版使用tom-skype国内卡方法'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28240738.post-928740392076059078</id><published>2008-10-14T14:50:00.009+08:00</published><updated>2008-10-14T15:27:58.627+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Koobi 相关'/><title type='text'>koobi发布新的免费模板</title><content type='html'>十天前, koobi官方网站陆续发布出了三款模板, 适用于koobi 7 pro版和standard版, 提供免费下载.&lt;br /&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_rzAwrC5hjkQ/SPRCs4A61qI/AAAAAAAAAP4/d75ImWk_s-g/s1600-h/aufnahme1.jpg"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_rzAwrC5hjkQ/SPRCs4A61qI/AAAAAAAAAP4/d75ImWk_s-g/s200/aufnahme1.jpg" alt="" id="BLOGGER_PHOTO_ID_5256900003766130338" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a title="Koobi 7 Theme - Butterfly" href="http://www.dream4.de/cms/downloadverzeichnis/1/3/9/koobi-7-theme-butterfly/"&gt;Koobi 7 Theme - Butterfly&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_rzAwrC5hjkQ/SPRCtDDL6rI/AAAAAAAAAQA/kkWIDjAnKoM/s1600-h/classic-car.jpg"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_rzAwrC5hjkQ/SPRCtDDL6rI/AAAAAAAAAQA/kkWIDjAnKoM/s200/classic-car.jpg" alt="" id="BLOGGER_PHOTO_ID_5256900006728428210" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a title="Koobi 7 Theme - Classic Car" href="http://www.dream4.de/cms/downloadverzeichnis/1/3/8/koobi-7-theme-classic-car/"&gt;Koobi 7 Theme - Classic Car&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_rzAwrC5hjkQ/SPRCtEFejlI/AAAAAAAAAQI/XxcccLi_9Co/s1600-h/flowers.jpg"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_rzAwrC5hjkQ/SPRCtEFejlI/AAAAAAAAAQI/XxcccLi_9Co/s200/flowers.jpg" alt="" id="BLOGGER_PHOTO_ID_5256900007006473810" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a title="Koobi 7 Theme - Flowers" href="http://www.dream4.de/cms/downloadverzeichnis/1/3/10/koobi-7-theme-flowers/"&gt;Koobi 7 Theme - Flowers&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;个人认为butterfly比较打眼. 字体'Georgia'我很也喜欢. 就是本博客使用的字体, 这种字体最明显是数字显示很漂亮. 另外, 从koobi7的标准模板到这几个模板, 默认字体都是12pt, 显示中文再也不会像6系列那样需要难看,需要到css去一个一个改了.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;适用版本&lt;/span&gt;&lt;br /&gt;Koobi7 Pro,  Koobi7 Standard&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;安装指导&lt;/strong&gt;&lt;br /&gt;#文件解压缩后复制到 koobi安装目录的"/ theme /" 文件夹中.&lt;br /&gt;# 登录到后台,  进入"设置"-&gt;"分区"&lt;br /&gt;# 点击目标分区的"编辑"图标, 在弹出窗口的模板(theme)下拉选框中你会看到刚复制进去的模板, 选择你喜欢的, 其它都不需要更改, 保存&lt;br /&gt;# 刷新相应分区, 查看效果.&lt;br /&gt;&lt;br /&gt;另外, 顺便讲讲我对koobi运行速度的了解. koobi使用页面缓存技术, 如果页面是第一次被访问, 它需要生成一个缓存页面文件, 比较慢, 以后再打开这个页面(不管是你还是其它人在其它地方访问), 速度就很快了. (这种样子对边修改边测试的人是很普通痛苦的, 改动了它就要重新生成一次).  我在我的机器上测试(赛扬2.1的老机器了), 首页第一次打开要5.032秒, 之后第次不超过1.5秒, 应该还是可以接受的.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-928740392076059078?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/928740392076059078/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=928740392076059078&amp;isPopup=true' title='15 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/928740392076059078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/928740392076059078'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2008/10/koobi.html' title='koobi发布新的免费模板'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_rzAwrC5hjkQ/SPRCs4A61qI/AAAAAAAAAP4/d75ImWk_s-g/s72-c/aufnahme1.jpg' height='72' width='72'/><thr:total>15</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28240738.post-7556369448808013165</id><published>2008-09-17T16:22:00.007+08:00</published><updated>2008-10-12T15:59:22.916+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Koobi 相关'/><title type='text'>koobi Pro 7.1.04 和 7.1.05 的升级</title><content type='html'>最近koobi升级很频繁. 两个月中发布了两次修正性升级. 我试着将这两次升级的说明译成中文以通告爱好者们.(没有得到升级程序).&lt;br /&gt;&lt;br /&gt;koobi 7.1.04 (pro &amp;amp; standard)更新(基于7.1.03):&lt;br /&gt;修正:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;在非分区1(section 1)中创建制造厂商(Manufacturer), 却只能显示在分区1中. &lt;/li&gt;&lt;li&gt;在非分区1中创建投票调查(Poll)出错, 投票无法处理. &lt;/li&gt;&lt;li&gt;在分区1中指定投票"不发布"出错. &lt;/li&gt;&lt;li&gt;所有文章(除文档)都会在分区1显示, 即使文章是创建在其它分区. &lt;/li&gt;&lt;li&gt;如果在分区中选择某一类新闻,将得不到正确的"该分区该分类"的新闻&lt;/li&gt;&lt;li&gt;论坛贴子的meta描述丢失现象. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;总的看来, 7.1.04主要是修正7.1.03中分区管理的错误. &lt;/p&gt;&lt;p&gt;[10.04 更新]: 国庆假期花了一点时间对照1.04对于1.03的源代码改动, 发现其实改动的远不止官方所描述的(上面的引用), 还有好多安全漏洞的小修改. 在此共享. 同样, 我的改动仅限于安装过程的多语言化和整个网站的UTF-8, 跟&lt;a href="http://vayavo.blogspot.com/2008/08/koobi-pro-7103.html"&gt;之前的改动范围&lt;/a&gt;完全一样. 中文语言文件我有一搭没一搭的译出了一些, 主要还有论坛和商店两个大头没有译. 因为我译语言是要逐一运行引用每条语言条目的网页, 以求译文准确, 同时也能测试一下每个角落的运行情况, 所以翻译比较慢...反正是玩嘛.  这次还收到了koobi 7 用户手册. &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.mediafire.com/?lwcdjdwhczu"&gt;下载 koobi Pro v7 Build 1.04&lt;/a&gt;(10.12更新)&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.mediafire.com/?jhmnjnmzhyj"&gt;下载 koobi 7 用户手册&lt;/a&gt;(德文附图)&lt;/p&gt;&lt;p&gt;mafiascripts和iAG这两个大名鼎鼎的破解组织也释出了他们的koobi7.104, 我逐个文件详细对比, mafiascripts的版本把所有版权标志和检查copyright.php等都去掉了, 没有修改其它一些小错误; iAG同样去掉版权标志(这是不是就叫做nulled), 没有修改错误, 还在两个地方加了iAG的标志. 都加入了nfo文件.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;koobi 7.1.05 (pro &amp;amp; standard)更新(基于7.1.04):&lt;br /&gt;本次升级修正了一些次要错误, 以及以下主要改动:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;商店(Shop): 当顾客使用了优惠券时最终价格计算不正确. &lt;/li&gt;&lt;li&gt;文章: 相关购买链接可能出错. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;新功能:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Banners管理(新功能): 不同的分区显示不同的Banner, 指定Banner显示权重(显示频率), 最多显示次数等. &lt;/li&gt;&lt;li&gt;可以指定首页显示文章,链接,下载等项目的条数. &lt;/li&gt;&lt;li&gt;"最新注册用户"的显示用户名称及头像. &lt;/li&gt;&lt;li&gt;论坛显示"当前在线"用户包含当前不在论坛但在站内的用户. &lt;/li&gt;&lt;li&gt;日历中显示最新事件&lt;/li&gt;&lt;li&gt;论坛贴子meta关键词和描述可用&lt;/li&gt;&lt;li&gt;优化显示notfound.php(网页没找到的错误页)的速度. &lt;/li&gt;&lt;li&gt;联络表单: 通过网站发送邮件的同时可以抄送一份给发送者本人.&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-7556369448808013165?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/7556369448808013165/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=7556369448808013165&amp;isPopup=true' title='30 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/7556369448808013165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/7556369448808013165'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2008/09/koobi-7104-7105.html' title='koobi Pro 7.1.04 和 7.1.05 的升级'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><thr:total>30</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28240738.post-3766775180561218155</id><published>2008-08-18T14:01:00.010+08:00</published><updated>2008-09-03T17:04:59.624+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Koobi 相关'/><title type='text'>koobi pro 7.1.03</title><content type='html'>对于&lt;a href="http://vayavo.blogspot.com/2008/08/koobi-7-cmsonlineshop.html"&gt;前文&lt;/a&gt;提到过的四个加密文件:&lt;br /&gt;/setup.php&lt;br /&gt;/index.php&lt;br /&gt;/lib/copyright.php&lt;br /&gt;/admin/index.php&lt;br /&gt;都反编成了明码. 没作功能性的改动. 改动仅限于:&lt;br /&gt;1. 在没有中国选项的地方加上中国.&lt;br /&gt;2. 安装过程中有一处原码是会把安装情况包括主机名/系列号/个人信息等情况邮件发送到官方, 我把它注释掉了.&lt;br /&gt;其它......基本没有改动了. 哦对, 安装过程原来是不可选的语种的, 就德语. 我把它改成了可选语种. 前后台语言加上了中文包--但我没有翻译语言条目, 没兴趣. 有需要用的不防自行译. 如果你译好了愿意反馈给我, 当然欢迎!&lt;br /&gt;至于官方的反D版措施, 我看是非常松的. 一是在安装过程中有个邮件收集, 上面我提到了, 我把它注释掉了. 二是对于copyright.php这个文件的检查, 原码是如果去掉了这个版权标识就无法运行. 不过即已经将它编为明码了, 你如果要改......何必呢, 我们只是看到好代码玩玩而已. 商业应用还是悠着点.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mediafire.com/?hrryrzjepxk" target="_blank"&gt;下载 Koobi Pro 7.1.03 &lt;/a&gt;    [08.08.29日更新]&lt;br /&gt;玩得开心.&lt;br /&gt;&lt;br /&gt;08.08.29:&lt;br /&gt;1. 强制指定数据库,数据读写均遵循UTF8字符集&lt;br /&gt;2. 修正程序在对中文进行字符安全处理后显示乱码的问题(都是htmlentities, htmlspecialchars, stripslashes这三个函数作崇, 涉及到三个文件,五个自定义函数, 分别对模板文件中的字符处理和程序文件中的字符处理起作用)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-3766775180561218155?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/3766775180561218155/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=3766775180561218155&amp;isPopup=true' title='21 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/3766775180561218155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/3766775180561218155'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2008/08/koobi-pro-7103.html' title='koobi pro 7.1.03'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><thr:total>21</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28240738.post-4049124239983296631</id><published>2008-08-16T21:42:00.006+08:00</published><updated>2008-08-16T22:03:49.764+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Koobi 相关'/><title type='text'>koobi pro 7 解密 -- byterun的反编码过程</title><content type='html'>koobi 7 发布之后, 我在第一时间得到了源码, 安装表现自不待说, 精彩非常, 是一个不可多得的CMS/onlineshop. 有兴趣可以看官网:dream4.de&lt;br /&gt;细看源码, 发现商业保护采用的是内部编码加密的方式, 有这么几个文件加密:&lt;br /&gt;/setup.php&lt;br /&gt;/index.php&lt;br /&gt;/lib/copyright.php&lt;br /&gt;/admin/index.php&lt;br /&gt;以copyright.php为例讲述我的反编码过程. 其中让我对原作者的奇思妙想大为佩服.&lt;br /&gt;copyright.php加密后的编码如下:&lt;br /&gt;$_F=__FILE__;$_X='PzNhP21abWJ5eWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYnl5ND5ZWVdyNAoyNC00Lzc2NC00dFkKW1JxNll3W2xSCkIoSCk0VgpCUjdkKG4pNGJ5eTRQW1t0Onl5bGxsWFYKQlI3ZFhWQmJ5eWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYnl5NFIvUFtHRjkhYnl5NFZyQjZCCjR0Clk5ClI3Ny9ZVkI0cjZbNEcKUEIKCkIvUFtxci9QNDlCNi9QR0JbVVtieXk0VnJCNEcKUEJXQgoKQi9QW0I0cXJCOUJGNFdCcjRWQkY0fUJsQnJxcjlCRjRSR1tZCkJGWGJ5eTRSQkZWQgpHRjlCRjRyRjRWckI2Qgo0VlJbQnI0Qgp3WXE5QkY0Ukd3NEJyOUJGQjQ5QndSUAohYnl5NEI2NHI2WzRGci9QWzQ5QjZbUltbQlssNFZCRjQvWXRoCnI5UFtQckZsQnI2NFVHNFJCRlZCCkY0WVZCCjRVR2J5eTRCRlt3QgpGQkZYNEZHCjRsQkZGNDZyQjRCckZCNC9ZdGgKcjlQW1ByRmxCcjYtQkZbd0IKRkdGOTRXQjZbQnFxW2J5eTRQUldCRiw0VkdCCndCRjQ2ckI0VnJCNkJGNEJGW3dCCkZCRlhieXlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYnl5NFdCcjR3ClI5QkY0bEJGVkJGNDZyQjQ2ci9QNFdyW1tCNFJGOjQ+WUZbUj5bQFYKQlI3ZFhWQmJ5eWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYkVNdU9ETTQoJ3JfVnIKJyw0TG9uX25NbS4wSE0oIlxcIiwieSIsY01vSF1FKCkpKTtiQE9ESC5KRU0ocl9Wcgo0WDQneS5PQXlwTW5MT1NEWE9ET1htWm0nKTtiRU11T0RNKCcvWXRoRllbci9CJyw0J1ZPTUxNNDZNT29NNF1KbkVNNCBPbzQ+U1NBTzQnWGlCCjZyWUZYJzQnWD5ZWVdyX2lCCjZyWUZYJzRNbkxvTS4ubzQmSFNtNTs0czg4ei0nNFg0RTBvTSgnaCcpNFg0JzRhMDRvMG5jTW9mIl9BLjBEUSI0Wm5NdWYiWm9vbTp5eV1dXVhFbk0wIGRYRU15SCBMeSIzRW5NMCBkJm5NYztheTAzJyk7YkVNdU9ETSgnL1l0aEZZW3IvQl9SVjdyRicsNCc+U1NBTzQnNFg0NGlCCjZyWUY0WDQnNCc0WDQ+WVlXcl9pQgo2cllGNFg0J2FBbjR5MyZIU201OzRzODh6LSc0WDRFMG9NKCdoJyk0WDQnNGEwNG8wbmNNb2YiX0EuMERRIjRabk11ZiJab29tOnl5XV1dWEVuTTAgZFhFTXlIIEx5IjNFbk0wIGQmbk1jO2F5MDMnKTtiYnVKREhvT1NENGVqTHdWY091SnVPSkV1Sk9VVUdrMklqMklqMmoySU1FKCRTSm8pYktiCSR1T0RFX0g0ZjRMb25tU0woJFNKbyw0L1l0aEZZW3IvQik7YgliCU91KCR1T0RFX0g0ZmZmNHUwLkxNNCYmNEAkXwpCPEdCNltnJ20nTjQhZjQnIE9MSCc0JiY0IUVNdU9ETUUoJ0ZZWUdbJykpYglLYgkJTW5uU24oJz5TU0FPNEgwRERTbzRBTTRuSkQ0QU1IMEpMTTRTdTQgU0VPdTVPRGM0b1pNNHVPLk00YU0gMy5PQXlIU201bk9jWm9YbVptYXlNIDNYYUFuNHkzdC5NMExNNEpMTTRvWk00WW5PY09EMC4td08uTTQwREU0bS4wSE00b1pNNFswYzRhTSAzS0hTbTVuT2Nab1RheU0gMzQwbzRvWk00QkRFNFN1NDVTSm40UFs3cS1bTSBtLjBvTVgnKTtiCVQ0TS5MTTRLYgkJTUhaUzQkU0pvO2IJVGJUYmJ1SkRIb09TRDRtbk9Eb19IU201bk9jWm8oKWJLYgluTW9KbkQ0L1l0aEZZW3IvQjtiVGI/Mw==';$_D=strrev('edoced_46esab');eval($_D('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCdPL2JwdXcza002QjJ0eEQxLlJvWF1sVlkgPkpBRUdUZno3SwpRSD1qc31acVVjZTh2NW5tPFs5YTRpMENyV3tOZ2hkSUxQeVNGJywnaUMKdmZGPnplU0U3UDVucWxBdC53V0RPbUt1YmRVfT0zTXtSa2N4OTJKaExaZ1gwNnlycFFURzwgVmFqSUIxXVtZNDhzSC9vTicpOyRfUj1lcmVnX3JlcGxhY2UoJ19fRklMRV9fJywiJyIuJF9GLiInIiwkX1gpO2V2YWwoJF9SKTskX1I9MDskX1g9MDs='));&lt;br /&gt;&lt;br /&gt;有一定编程经验的人一定都能解出eval函数的编码为:&lt;br /&gt;$_X=base64_decode($_X);$_X=strtr($_X,'O/bpuw3kM6B2txD1.RoX]lVY &gt;JAEGTfz7K&lt;br /&gt;QH=js}ZqUce8v5nm &lt;[9a4i0CrW{NghdILPySF','iC&lt;br /&gt;vfF&gt;zeSE7P5nqlAt.wWDOmKubdU}=3M{Rkcx92JhLZgX06yrpQTG &lt; VajIB1][Y48sH/oN');$_R=ereg_replace('__FILE__',"'".$_F."'",$_X);eval($_R);$_R=0;$_X=0;&lt;br /&gt;&lt;br /&gt;按 一般的加密编码思维, 只要按上面代码的意思, 将$_X base64反编码, 再把strtr函数的过程中的字串复制下来代回到$_X中即可. 然而在复制过程中就犯了一个原作者设下的误区. 在JAEGTfz7K和iC后面的换行符\n在windows下复制将产生错误, 最后导致对应替换出来的代码失真.&lt;br /&gt;&lt;br /&gt;我的思路是, 既然反编码的关键在"复制"替换字串时出错, 那我何不避免"复制"?&lt;br /&gt;一, 分析得到上述编码后, 不echo出来, 直接通过文件操作写入一个文件(暂叫他temp.php).&lt;br /&gt;二, 将copyright.php中的$_F $_X变量复制到temp.php中, 删除eval($_R);$_R=0;$_X=0; .&lt;br /&gt;三, 最后通过文件操作把$_R写入一个新文件crack_copyright.php, 即得到完全正确的源码.&lt;br /&gt;&lt;br /&gt;//=================================================================&lt;br /&gt;// KOOBI R7 - CMS - PORTALSOFTWARE(c) DREAM4(r)&lt;br /&gt;// HTTP://WWW.DREAM4.DE&lt;br /&gt;//=================================================================&lt;br /&gt;// ACHTUNG!&lt;br /&gt;// DIESER PROGRAMMCODE IST URHERRECHTLICH GESCHUETZT&lt;br /&gt;// DIE URHEBERRECHTE LIEGEN BEI DEN JEWEILIGEN AUTOREN.&lt;br /&gt;// AENDERUNGEN IN DIESER DATEI ERFOLGEN AUF EIGENE GEFAHR!&lt;br /&gt;// ES IST NICHT GESTATTET, DEN COPYRIGHTHINWEIS ZU AENDERN ODER ZU&lt;br /&gt;// ENTFERNEN. NUR WENN SIE EINE COPYRIGHTHINWEIS-ENTFERNUNG BESTELLT&lt;br /&gt;// HABEN, DUERFEN SIE DIESEN ENTFERNEN.&lt;br /&gt;//================================================================&lt;br /&gt;// BEI FRAGEN WENDEN SIE SICH BITTE AN: KONTAKT@DREAM4.DE&lt;br /&gt;//=================================================================&lt;br /&gt;define ('I_DIR', str_replace("\\","/",getcwd()));&lt;br /&gt;@include(I_DIR . '/lib/version.ini.php');&lt;br /&gt;define('COPYNOTICE', 'Diese Seite wurde mit Koobi '.VERSION.' '.KOOBI_VERSION.' erstellt © 2003-' . date('Y') . ' &lt;a target="_blank" href="http://www.dream4.de/cms/"&gt;dream4® &lt;/a&gt;');&lt;br /&gt;define('COPYNOTICE_ADMIN', 'Koobi ' .  VERSION . ' ' . KOOBI_VERSION . '&lt;br /&gt;© 2003-' . date('Y') . ' &lt;a target="_blank" href="http://www.dream4.de/cms/"&gt;dream4® &lt;/a&gt;');&lt;br /&gt;&lt;br /&gt;function X9sFDgifufiudfuiZZUz7897897978ed($out)&lt;br /&gt;{&lt;br /&gt;$find_c = strpos($out, COPYNOTICE);&lt;br /&gt;&lt;br /&gt;if($find_c === false &amp;amp;&amp;amp; @$_REQUEST['p'] != 'misc' &amp;amp;&amp;amp; !defined('NOOUT'))&lt;br /&gt;{&lt;br /&gt;error('Koobi cannot be run because of modifying the file &lt;em&gt;lib/copyright.php &lt;/em&gt;.&lt;br /&gt;Please use the Original-File and place the Tag &lt;em&gt;{copyright} &lt;/em&gt; at the End of your HTML-Template.');&lt;br /&gt;} else {&lt;br /&gt;echo $out;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function print_copyright()&lt;br /&gt;{&lt;br /&gt;return COPYNOTICE;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;我看到网上有兄弟在一个07年贴子里解密这种代码动用十六进制编辑器. 我不懂这个，运作太大了, 亦不是一般程序员都懂编辑十六进制.&lt;br /&gt;顺便说, 这种加密码是用一个叫byterun protector的软件产生的.&lt;br /&gt;koobi 7的完整程序我想稍后放上来。koobi 7虽然开始了多语种支持的尝试，但还是比较死板，安装过程是无法选择的。同样，像对V6.25版做的那样， 我在把安装过程改成多语种可选安装。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-4049124239983296631?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/4049124239983296631/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=4049124239983296631&amp;isPopup=true' title='4 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/4049124239983296631'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/4049124239983296631'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2008/08/koobi-7-cmsonlineshop.html' title='koobi pro 7 解密 -- byterun的反编码过程'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28240738.post-6458849763015318584</id><published>2008-08-15T12:14:00.007+08:00</published><updated>2008-08-15T12:42:26.200+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php程序'/><title type='text'>Simple Customer</title><content type='html'>Simple Customer 是为那些需要简易追踪客户的人设计的. 打单的客户经理,渠道拓展经理, OEM客户开发人员, 等等大部分的Sales, 都会发现它是多么有用. 它能帮你记录客户信息, 跟踪信息, 以及简单的提醒标记. 使用PHP/mysql, Simple Customer 是一个轻量级的, 小巧而实用,专业的程序工具. 你完全可以当他是一个CRM(customer relationship management).&lt;br /&gt;&lt;br /&gt;这个程序是由&lt;a href="http://www.simplecustomer.com/"&gt;http://www.simplecustomer.com/&lt;/a&gt;发布的, 我将它作了一些修改, 使之更适合一般的业务行事. 这些修改包括:&lt;br /&gt;1. 姓名字段的调整. 将firstname+lastname改为一个字段, 适合中国人的习惯.&lt;br /&gt;2. 客户信息表单的小调整&lt;br /&gt;3. 客户列表同时显示最后一条跟踪信息, 并可设置客户状态提醒(pendding/hang up)&lt;br /&gt;&lt;br /&gt;你可以从simplecustomer.com下载到末经修改之前的版本, 他的站上还有一个&lt;a href="http://www.simplecustomer.com/demo/login.php"&gt;DEMO&lt;/a&gt;. 或者从&lt;a href="http://www.mediafire.com/?99e0y9omlof"&gt;这里&lt;/a&gt;下载我修改过后的版本--我正在用它帮助我工作.&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_rzAwrC5hjkQ/SKUENQ8uHcI/AAAAAAAAAN4/xSmpGDGGIow/s1600-h/home-b.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5234594767822527938" style="CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_rzAwrC5hjkQ/SKUENQ8uHcI/AAAAAAAAAN4/xSmpGDGGIow/s200/home-b.jpg" border="0" /&gt;&lt;/a&gt; &lt;a href="http://3.bp.blogspot.com/_rzAwrC5hjkQ/SKUEIwuQwzI/AAAAAAAAANw/JObf3JiFaXE/s1600-h/home-a.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5234594690452472626" style="CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_rzAwrC5hjkQ/SKUEIwuQwzI/AAAAAAAAANw/JObf3JiFaXE/s200/home-a.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_rzAwrC5hjkQ/SKUECNvCuKI/AAAAAAAAANo/5XPBmdOWrDY/s1600-h/sc2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5234594577981290658" style="CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_rzAwrC5hjkQ/SKUECNvCuKI/AAAAAAAAANo/5XPBmdOWrDY/s200/sc2.jpg" border="0" /&gt;&lt;/a&gt; &lt;a href="http://3.bp.blogspot.com/_rzAwrC5hjkQ/SKUD8PBz-2I/AAAAAAAAANg/ZlD4WQd2lXY/s1600-h/sc1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5234594475249236834" style="CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_rzAwrC5hjkQ/SKUD8PBz-2I/AAAAAAAAANg/ZlD4WQd2lXY/s200/sc1.jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-6458849763015318584?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/6458849763015318584/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=6458849763015318584&amp;isPopup=true' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/6458849763015318584'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/6458849763015318584'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2008/08/simple-customer.html' title='Simple Customer'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SKUENQ8uHcI/AAAAAAAAAN4/xSmpGDGGIow/s72-c/home-b.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28240738.post-1172071158736096144</id><published>2007-12-05T09:26:00.002+08:00</published><updated>2008-08-22T13:25:48.729+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Koobi 相关'/><title type='text'>Koobi Pro 6.2 and Koobi Pro 6.25 以及相关汉化</title><content type='html'>&lt;p&gt;前面说到要将koobi改进为多语言安装接口, 一直跳票至今. 正在这个时候, Dream4又发布了6.25版本. 主要是对商店模块作了改进. 我从&lt;a href="http://overdoze.ru/" target="_blank"&gt;overdoze.ru&lt;/a&gt;获得了源码, 并逐一进行了编码转换和汉化. 我把它叫做多语言版(你完全可以叫它汉化版, UTF-8版, 国际版, 阿猫阿狗版, 随你高兴, 反正就是那么回事).  主要修改是(6.2版和6.25版):&lt;br /&gt;&lt;/p&gt;&lt;p&gt;1. 增加简体中文语言包和英语语言包&lt;br /&gt;2. 安装过程改为多语言可选安装&lt;br /&gt;3. 后台语言增加了几条条目&lt;br /&gt;4. 全部程序改为UTF-8国际编码(相应的,6.2至6.25的升级包也修改了一份UTF-8版)&lt;br /&gt;5. 部分国家选项的默认值改为中国.部分国家选项中原来缺少中国的增加了中国.&lt;br /&gt;5. 原程序内核不作丝毫改动.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;分享: &lt;a href="http://www.mediafire.com/?2in0yvz2tnt" target="_blank"&gt;Koobi Pro 6.2 原版&lt;/a&gt;,  &lt;a href="http://www.mediafire.com/?0vstqdmhyqb" target="_blank"&gt;Koobi Pro 6.2 多语言版&lt;/a&gt;(UTF-8), &lt;a href="http://www.mediafire.com/?9nz31y1x41i" target="_blank"&gt;Koobi Pro 6.25 原版&lt;/a&gt;,  &lt;a href="http://www.mediafire.com/?kagnm4bgnqe" target="_blank"&gt;Koobi Pro 6.25 多语言版(UTF-8)&lt;/a&gt;&lt;a href="http://www.mediafire.com/?kagnm4bgnqe"&gt; &lt;/a&gt;,  &lt;a href="http://www.mediafire.com/?dqdpnqmioz0" target="_blank"&gt;6.2-6.25升级包(原版)&lt;/a&gt;,  &lt;a href="http://www.mediafire.com/?6zjxmmb0xbc" target="_blank"&gt;6.2-6.25升级包(UTF-8).&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;玩得开心! 欢迎交流.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;[2008-05-22更新, koobi pro 6.25,&lt;br /&gt;一,  system/shopthumb.php中修改了几行代码. 我发现原代码在windows系统下无法显示缩略图;&lt;br /&gt;二,  inc/secure/secure.php 注释掉了引入init.php的一行. 我发现引入init.php时在windows系统下无法显示注册验证码, 注释掉反而正常. 注释掉这一行后对其它使用secure.php的部分测试, 工作正常]&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-1172071158736096144?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/1172071158736096144/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=1172071158736096144&amp;isPopup=true' title='9 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/1172071158736096144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/1172071158736096144'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2007/12/koobi-pro-62-and-koobi-pro-625.html' title='Koobi Pro 6.2 and Koobi Pro 6.25 以及相关汉化'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28240738.post-2362682482010678010</id><published>2007-10-09T09:24:00.000+08:00</published><updated>2008-08-15T09:26:41.010+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Koobi 相关'/><title type='text'>koobi pro V6.2 的汉化语言包</title><content type='html'>koobi是德国厂商开发的一款CMS系统, 我试过比较joomla, koobi,phpcms,drupal, xoops,等等等等, 并差不多把opensourcecms.com上收录的系统都比较了一遍, 就个人而言, 认为koobi最实用. joomla功能强大,扩展性强, 但, 别忘了, joomla小组以一年时间开发了两万行代码为荣. 确实了不起, 但这两万行代码要让用户再投入到二次开发...个人认为很难有时间和耐心去修改为合适自己的系统. 所以, 不是说joomla不好,而是joomla最大的优点恰恰在我这里成了最大的弱点.&lt;br /&gt;koobi则恰好把joomla的优点变成缺点把joomla的缺点变成优点. koobi扩展性不强, 并且没有多语言化. 一是把常用模块如文章内容管理,产品展示管理,图片相册管理, 在线商店,友情链接,论坛,留言本,用户管理等等模块都做进去了,并且各模块功能做到了尽可能好(系统内部各模块开关,但不可去除模块), 二是代码很好理解,便于二次开发,模板接口方便易用.,三是基本没有第三方插件支持,因为是商业程序.&lt;br /&gt;ok, 敦优敦劣,这不是重点,各取所需. koobi是德语开发, 并且没有将安装过程多语言化. 要安装其它语种只能系统安装完成后再导入语言包.&lt;br /&gt;昨晚抽空把中文\英文语言包完成了, 前台共1516条, 后台共1831条, 在&lt;a href="http://www.mediafire.com/?dydg0ep3yxt" target="_blank"&gt;这里&lt;/a&gt;下载.&lt;br /&gt;并且我把安装程序加入了多语言安装接口, 还有一些多语种字符过滤的工作没有完成. 不日将把完整的多语言化koobi pro 6.2 释出.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-2362682482010678010?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/2362682482010678010/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=2362682482010678010&amp;isPopup=true' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/2362682482010678010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/2362682482010678010'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2007/10/koobi-pro-v62.html' title='koobi pro V6.2 的汉化语言包'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28240738.post-116044806719855341</id><published>2006-10-10T10:41:00.002+08:00</published><updated>2008-08-16T21:58:25.634+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PHP实用技术'/><title type='text'>php生成缩略图兼容各GD版函数</title><content type='html'>function ImageResize($srcFile,$toW,$toH,$toFile="")&lt;br /&gt;{&lt;br /&gt;//$srcFile :源文件路径及文件名&lt;br /&gt;//$toW :目标文件宽度&lt;br /&gt;//$toH :目标文件高度&lt;br /&gt;//$toFile :目标文件路径及文件名&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;if($toFile==""){ $toFile = $srcFile; }&lt;br /&gt;$info = "";&lt;br /&gt;$data = GetImageSize($srcFile,$info);&lt;br /&gt;&lt;br /&gt;switch ($data[2])&lt;br /&gt;{&lt;br /&gt;case 1:&lt;br /&gt;if(!function_exists("imagecreatefromgif")){&lt;br /&gt;echo "你的GD库不能使用GIF格式的图片，请使用Jpeg或PNG格式！&amp;lt;a href='javascript:go(-1);'&amp;gt;返回&amp;lt;/a&amp;gt;";&lt;br /&gt;exit();&lt;br /&gt;}&lt;br /&gt;$im = ImageCreateFromGIF($srcFile);&lt;br /&gt;break;&lt;br /&gt;&lt;br /&gt;case 2:&lt;br /&gt;if(!function_exists("imagecreatefromjpeg")){&lt;br /&gt;echo "你的GD库不能使用jpeg格式的图片，请使用其它格式的图片！&amp;lt;a href='javascript:go(-1);'&amp;gt;返回&amp;lt;/a&amp;gt;";&lt;br /&gt;exit();&lt;br /&gt;}&lt;br /&gt;$im = ImageCreateFromJpeg($srcFile);&lt;br /&gt;break;&lt;br /&gt;&lt;br /&gt;case 3:&lt;br /&gt;$im = ImageCreateFromPNG($srcFile);&lt;br /&gt;break;&lt;br /&gt;}&lt;br /&gt;$srcW=ImageSX($im);&lt;br /&gt;$srcH=ImageSY($im);&lt;br /&gt;$toWH=$toW/$toH;&lt;br /&gt;$srcWH=$srcW/$srcH;&lt;br /&gt;if($toWH&amp;lt;=$srcWH){&lt;br /&gt;$ftoW=$toW;&lt;br /&gt;$ftoH=$ftoW*($srcH/$srcW);&lt;br /&gt;}&lt;br /&gt;else{&lt;br /&gt;$ftoH=$toH;&lt;br /&gt;$ftoW=$ftoH*($srcW/$srcH);&lt;br /&gt;}&lt;br /&gt;if($srcW&amp;gt;$toW$srcH&amp;gt;$toH)&lt;br /&gt;{&lt;br /&gt;if(function_exists("imagecreatetruecolor")){&lt;br /&gt;@$ni = ImageCreateTrueColor($ftoW,$ftoH);&lt;br /&gt;if($ni) ImageCopyResampled($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH);&lt;br /&gt;else{&lt;br /&gt;$ni=ImageCreate($ftoW,$ftoH);&lt;br /&gt;ImageCopyResized($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH);&lt;br /&gt;}&lt;br /&gt;}else{&lt;br /&gt;$ni=ImageCreate($ftoW,$ftoH);&lt;br /&gt;ImageCopyResized($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH);&lt;br /&gt;}&lt;br /&gt;if(function_exists('imagejpeg')) ImageJpeg($ni,$toFile);&lt;br /&gt;else ImagePNG($ni,$toFile);&lt;br /&gt;ImageDestroy($ni);&lt;br /&gt;}&lt;br /&gt;ImageDestroy($im);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;$uid = md5($thumb_w . $h . $q) . '_' . $row-&amp;gt;path;&lt;br /&gt;if(file_exists(BASEDIR . '/cache/'.$uid))&lt;br /&gt;{&lt;br /&gt;readfile(BASEDIR . '/cache/'.$uid);&lt;br /&gt;exit;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;ImageResize("./test.jpg","100","75","test_thumb.jpg");&lt;br /&gt;&lt;br /&gt;注：这不是我写的。&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28240738-116044806719855341?l=vayavo.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://vayavo.blogspot.com/feeds/116044806719855341/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=28240738&amp;postID=116044806719855341&amp;isPopup=true' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/116044806719855341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28240738/posts/default/116044806719855341'/><link rel='alternate' type='text/html' href='http://vayavo.blogspot.com/2006/10/phpgd.html' title='php生成缩略图兼容各GD版函数'/><author><name>海鹰</name><uri>http://www.blogger.com/profile/02022122638457757644</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='27' src='http://3.bp.blogspot.com/_rzAwrC5hjkQ/SWDIYDoAeEI/AAAAAAAAAVU/xb5exDDBRy8/S220/tiger.gif'/></author><thr:total>0</thr:total></entry></feed>
