解决在某些网站采集后图片地址错误的bug

CMSWare No Comments

bug由来:cmsware采集程序中,在获得某篇文章的url地址后,会将该url作为其基础地址,随后在解析文章内容的时候,如果遇到图片地址使用了相对路径的,则用基础地址将其补全为绝对路径。但是这里忽略了一个现象,就是在某些特定环境下,比如专门提供网站rss服务的站点,他们在列表页中列出的文章url只是个转向链接(比如http://www.aaa.com/feed?111),浏览器访问后转向的地址才是文章的真实地址(比如http://www.bbb.com/articles/12345.html)。所以把列表页中获得的文章url(http://www.aaa.com/feed?111)直接作为基础地址是不完备的,应该用程序进行解析,用真实地址(http://www.bbb.com/articles/12345.html))作为基础地址。 Read the rest…

webkit(chrome,safari)的for(i in array)用法问题

JAVASCRIPT No Comments

webkit会自动对对象依据键名进行排序,而不是默认按照先定义先调取的顺序

解决办法:最好不用这个方式来遍历数组,实在要用的话,用一个数组来记录键的顺序,或者在for的里面加一个if的判断:

for(var i in array){
 if(aray[i]!==null){
  ……
 }
}

用css的手段解决Google Chrome浏览器的字体最小12px问题

浏览器兼容性 No Comments

Google Chrome由于使用Webkit内核,所以存在一个bug,就是字体最小默认为12px,不管你css里怎么定义。用css的解决方法是加上如下定义: Read the rest…

javascript下在createElement时候设置元素的name值

JAVASCRIPT No Comments

IE有个设定,不知道出于何目的,在用程序创建的元素里不能设置name值,其他浏览器则可用setAttribute(“name”,name)来设置。没办法,新建一个通用函数来解决之

var is_ie=!!(this.n.indexOf(“msie”) >= 0 && document.all && this.db && !this.op);
document.createElementName=function(tagName,name){
 if(is_ie){
  return document.createElement(“<”+tagName+” name=’”+name+”‘></”+tagName+”>”);
 }else{
  var ret=document.createElement(tagName);
  ret.setAttribute(“name”,name);
  return ret;
 }
}

is_ie也可以写成一个函数。在createElement里直接跟name信息,是微软的建议。http://msdn.microsoft.com/en-us/library/ms534184.aspx

解决Windows系统声音故障一例

未分类 No Comments

发现右下角托盘的声音图标没了,而且所有的系统自带音效不见了,但是播放音乐和电影是有声音的。试过了很多常规方法,包括修复工具,都不行,原来问题不是出在声音硬件上,也不是托盘执行文件上,而是系统声音的控制上。

解决方法:开始->运行->键入 regedit,打开‘注册表编辑器’,找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32,新建一个字符串值,名为“wavemapper” 值为“msacm32.drv”。问题解决了,立刻见效。这是最佳方案 。待重新启动PC以后,任务栏的小喇叭就出来了。如果还未出现任务栏的小喇叭,则:控制面板–声音和音频设备–勾选‘将音量图标放入任务栏’。

[转]12种不宜使用的Javascript语法

JAVASCRIPT No Comments

作者: 阮一峰

日期: 2010年1月 3日

这几天,我在读《Javascript语言精粹》。

这本书很薄,100多页,正好假日里翻翻。 Read the rest…

绕过防盗链机制的加强版图片本地化程序

CMSWare, 未分类 No Comments

图片本地化的用处不用多说,由于很多网站采用了防盗链,所以本地化的时候往往会失败。本地化程序中使用的是copy函数,功能偏弱,所以可以将curl库应用在其中,灵活设置(主要就是添加一个referer),顺利将图片拷贝下来。 Read the rest…

修改了一下图片本地化的函数,让其能读取非正规格式的图片

CMSWare, 未分类 No Comments

图片本地化失败的最多原因是源地址不标准,如这种:http://taobao.news.ynet.com/img.db?63307742
解决思路是给它强行加上一个后缀,当然就是jpg了,另外也需要修改下url分析函数。

include/image.class.php5.php,要修改的函数在这里 Read the rest…

Firefox下用于替代createPopup的代码

JAVASCRIPT No Comments

Firefox不支持createPopup,然后用下面的代码来替代之 Read the rest…

[转]php版本的选择

PHP No Comments

一、如何选择PHP5.3的VC9版本和VC6版本

    VC6版本是使用Visual Studio 6编译器编译,如果PHP是用Apache来架设,那就选择VC6版本。
    VC9版本是使用Visual Studio 2008编译器编译,如果PHP是用IIS来架设,那就选择VC9版本。

二、如何选择PHP5.3的Thread Safe和Non Thread Safe版本

    从字面上理解,Thread Safe是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。Non Thread Safe是非线程安全,在执行时不进行线程(Thread)安全检查。

    再来看PHP的两种执行方式:ISAPI和FastCGI。

    ISAPI执行方式是以DLL动态库的形式使用,可以在被用户请求后执行,在处理完一个用户请求后不会马上消失,所以需要进行线程安全检查,这样来提高程序的执行效率,所以如果是以ISAPI来执行PHP,建议选择Thread Safe版本;

    而FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以FastCGI来执行PHP,建议选择Non Thread Safe版本。

« Previous Entries