<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>liuxq&#039;s blog &#187; 默认</title>
	<atom:link href="http://www.liuxq.cn/category/default/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.liuxq.cn</link>
	<description>从今天开始，坚定不移地做个优秀的人！</description>
	<lastBuildDate>Wed, 28 Jul 2010 17:16:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>PHPCMS2008提示&quot;Duplicate entry &#039;65535&#039; for key 1&quot;错误的解决方法</title>
		<link>http://www.liuxq.cn/2009/11/427/</link>
		<comments>http://www.liuxq.cn/2009/11/427/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 02:34:19 +0000</pubDate>
		<dc:creator>liuxq</dc:creator>
				<category><![CDATA[默认]]></category>
		<category><![CDATA[Duplicate entry '65535' for key 1]]></category>
		<category><![CDATA[mediumint]]></category>
		<category><![CDATA[phpcms]]></category>
		<category><![CDATA[错误]]></category>

		<guid isPermaLink="false">http://www.liuxq.cn/2009/11/427</guid>
		<description><![CDATA[这是一个一般情况下不会出现的问题,因为通常一个站点的关键词基数都大65535这个数值以下,不过如果网站数据较大,比如达到了5W或者更高时,关键词的数量也会同步上升,这时问题就出现了!
RT,发表或者修改文章时就会提示上面的错误"Duplicate entry '65535' for key 1".
好了,关键在于怎么解决对吧!
修改字段类型,用MYSQL工具或者直接进入PHPMYADMIN,查找到表phpcms_keyword中的字段"tagid",这个字段默认的类型为SMALLINT,默认长度为5.那么我现在将他的字段类型修改为MEDIUMINT,长度修改为8.
如果后台开启了SQL执行的话,可以直接执行以下语句:
alter table phpcms_keyword modify column tagid mediumint(8) unsigned NOT NULL auto_increment;
修改好后再发表或者修改文章时就不会出现标题中的错误提示了.
查了一下,MEDIUMINT是一个中等大小整数,有符号的范围是-8388608到8388607,无符号的范围是0到16777215,占3字节.
另外,你还可以将这个字段类型直接设置为INT(10),这样表基数将能支持更大值.
程序修改此BUG方案:
install/main/下面phpcms.sql, phpcms_db.sql, phpcms_speed.sql中相应参数都要重新修改.
分别打开这个三表,搜索到tagid,将后面的smallint(5)改为mediumint(8)即可!
]]></description>
			<content:encoded><![CDATA[<p>这是一个一般情况下不会出现的问题,因为通常一个站点的关键词基数都大65535这个数值以下,不过如果网站数据较大,比如达到了5W或者更高时,关键词的数量也会同步上升,这时问题就出现了!<br />
RT,发表或者修改文章时就会提示上面的错误"Duplicate entry '65535' for key 1".</p>
<p>好了,关键在于怎么解决对吧!<br />
修改字段类型,用MYSQL工具或者直接进入PHPMYADMIN,查找到表phpcms_keyword中的字段"tagid",这个字段默认的类型为SMALLINT,默认长度为5.那么我现在将他的字段类型修改为MEDIUMINT,长度修改为8.<br />
如果后台开启了SQL执行的话,可以直接执行以下语句:<br />
alter table phpcms_keyword modify column tagid mediumint(8) unsigned NOT NULL auto_increment;<br />
修改好后再发表或者修改文章时就不会出现标题中的错误提示了.</p>
<p>查了一下,MEDIUMINT是一个中等大小整数,有符号的范围是-8388608到8388607,无符号的范围是0到16777215,占3字节.<br />
另外,你还可以将这个字段类型直接设置为INT(10),这样表基数将能支持更大值.</p>
<p>程序修改此BUG方案:<br />
install/main/下面phpcms.sql, phpcms_db.sql, phpcms_speed.sql中相应参数都要重新修改.<br />
分别打开这个三表,搜索到tagid,将后面的smallint(5)改为mediumint(8)即可!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.liuxq.cn/2009/11/427/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>做地区门户网站做大后的发展方向?</title>
		<link>http://www.liuxq.cn/2009/11/426/</link>
		<comments>http://www.liuxq.cn/2009/11/426/#comments</comments>
		<pubDate>Fri, 06 Nov 2009 13:56:02 +0000</pubDate>
		<dc:creator>liuxq</dc:creator>
				<category><![CDATA[默认]]></category>
		<category><![CDATA[地区门户]]></category>
		<category><![CDATA[收购]]></category>

		<guid isPermaLink="false">http://www.liuxq.cn/2009/11/426</guid>
		<description><![CDATA[最近又在思考这个问题了,我们自己做的地区门户主要是指那些二三线城市,当然如果可以的话,一级城市也可以操作的!
做地区门户的前途在哪里?
1.在发展中不断打基础,(找风投)最后公司化运营,自己当老板.
2.做大后被其他公司看中收购掉,你去任职"总监",或者入股.
3.不找风投,也不被收购,就是自个儿运作(难度不小).
上面三个结果,多数人可能会选择第1条.选择这一条的人方向很明确,思路会很清晰,计划也也周密.不过风险也会比较大.毕竟,做大不难,如何持续做大并做强就很重要了.
也会有些人选择第二项吧,这类朋友其实也是明智的,这实际上是转移了风险,网站被收购应该也可以获得一定收益,但这个网站对你的收益也就仅仅这一次而已了.建议在有个好主并且收购重要任务不错的情况下再选这一条吧.
选第三条的应该不多,除非他仅仅是做这个网站来打发自己时间.
]]></description>
			<content:encoded><![CDATA[<p>最近又在思考这个问题了,我们自己做的地区门户主要是指那些二三线城市,当然如果可以的话,一级城市也可以操作的!</p>
<p>做地区门户的前途在哪里?<br />
1.在发展中不断打基础,(找风投)最后公司化运营,自己当老板.<br />
2.做大后被其他公司看中收购掉,你去任职"总监",或者入股.<br />
3.不找风投,也不被收购,就是自个儿运作(难度不小).</p>
<p>上面三个结果,多数人可能会选择第1条.选择这一条的人方向很明确,思路会很清晰,计划也也周密.不过风险也会比较大.毕竟,做大不难,如何持续做大并做强就很重要了.</p>
<p>也会有些人选择第二项吧,这类朋友其实也是明智的,这实际上是转移了风险,网站被收购应该也可以获得一定收益,但这个网站对你的收益也就仅仅这一次而已了.建议在有个好主并且收购重要任务不错的情况下再选这一条吧.</p>
<p>选第三条的应该不多,除非他仅仅是做这个网站来打发自己时间.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.liuxq.cn/2009/11/426/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>恭喜liuxq&#039;s blog的PR值上升为4</title>
		<link>http://www.liuxq.cn/2009/10/417/</link>
		<comments>http://www.liuxq.cn/2009/10/417/#comments</comments>
		<pubDate>Fri, 30 Oct 2009 02:39:41 +0000</pubDate>
		<dc:creator>liuxq</dc:creator>
				<category><![CDATA[默认]]></category>
		<category><![CDATA[pr]]></category>
		<category><![CDATA[友情链接]]></category>

		<guid isPermaLink="false">http://www.liuxq.cn/2009/10/417</guid>
		<description><![CDATA[这两天GG刚更新了PR值,虽然说GG有放弃PR这个概念,不过就现阶段来说,PR仍然是一个判断网页价值的重要指标!
此次,本博客PR值上升为4,纯属意料之外,呵呵.
如果可以,各位做技术的朋友们可以联系和我交换博客链接!
]]></description>
			<content:encoded><![CDATA[<p>这两天GG刚更新了PR值,虽然说GG有放弃PR这个概念,不过就现阶段来说,PR仍然是一个判断网页价值的重要指标!<br />
此次,本博客PR值上升为4,纯属意料之外,呵呵.<br />
如果可以,各位做技术的朋友们可以联系和我交换博客链接!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.liuxq.cn/2009/10/417/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>近期参与项目开发,所以会无暇照顾网友们的提问</title>
		<link>http://www.liuxq.cn/2009/10/416/</link>
		<comments>http://www.liuxq.cn/2009/10/416/#comments</comments>
		<pubDate>Fri, 30 Oct 2009 02:36:49 +0000</pubDate>
		<dc:creator>liuxq</dc:creator>
				<category><![CDATA[默认]]></category>
		<category><![CDATA[phpcms]]></category>
		<category><![CDATA[项目开发]]></category>

		<guid isPermaLink="false">http://www.liuxq.cn/2009/10/416</guid>
		<description><![CDATA[RT
大家但凡有关于PHPCMS的使用问题,请直接到论坛上提问,寻求其他版主的帮助!
]]></description>
			<content:encoded><![CDATA[<p>RT<br />
大家但凡有关于PHPCMS的使用问题,请直接到论坛上提问,寻求其他版主的帮助!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.liuxq.cn/2009/10/416/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>常用的匹配正则表达式实例</title>
		<link>http://www.liuxq.cn/2009/10/394/</link>
		<comments>http://www.liuxq.cn/2009/10/394/#comments</comments>
		<pubDate>Mon, 19 Oct 2009 16:37:18 +0000</pubDate>
		<dc:creator>liuxq</dc:creator>
				<category><![CDATA[默认]]></category>
		<category><![CDATA[实例]]></category>
		<category><![CDATA[正则表达式]]></category>

		<guid isPermaLink="false">http://www.liuxq.cn/?p=394</guid>
		<description><![CDATA[匹配中文字符的正则表达式： [\u4e00-\u9fa5],匹配双字节字符(包括汉字在内)：[^\x00-\xff]......
比较实用,winliuxq发上来和大家共享下!]]></description>
			<content:encoded><![CDATA[<p>匹配中文字符的正则表达式： [\u4e00-\u9fa5]</p>
<p>匹配双字节字符(包括汉字在内)：[^\x00-\xff]</p>
<p>应用：计算字符串的长度（一个双字节字符长度计2，ASCII字符计1）</p>
<p>String.prototype.len=function(){return this.replace([^\x00-\xff]/g,"aa").length;}</p>
<p>匹配空行的正则表达式：\n[\s| ]*\r</p>
<p>匹配HTML标记的正则表达式：/&lt;(.*)&gt;.*&lt;\/\1&gt;|&lt;(.*) \/&gt;/</p>
<p>匹配首尾空格的正则表达式：(^\s*)|(\s*$)</p>
<p>应用：javascript中没有像vbscript那样的trim函数，我们就可以利用这个表达式来实现，如下：</p>
<p>String.prototype.trim = function()<br />
{<br />
return this.replace(/(^\s*)|(\s*$)/g, "");<br />
}</p>
<p>利用正则表达式分解和转换IP地址：</p>
<p>下面是利用正则表达式匹配IP地址，并将IP地址转换成对应数值的Javascript程序：</p>
<p>function IP2V(ip)<br />
{<br />
re=/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //匹配IP地址的正则表达式<br />
if(re.test(ip))<br />
{<br />
return RegExp.$1*Math.pow(255,3))+RegExp.$2*Math.pow(255,2))+RegExp.$3*255+RegExp.$4*1<br />
}<br />
else<br />
{<br />
throw new Error("Not a valid IP address!")<br />
}<br />
}</p>
<p>不过上面的程序如果不用正则表达式，而直接用split函数来分解可能更简单，程序如下：</p>
<p>var ip="10.100.20.168"<br />
ip=ip.split(".")<br />
alert("IP值是："+(ip[0]*255*255*255+ip[1]*255*255+ip[2]*255+ip[3]*1))</p>
<p>匹配Email地址的正则表达式：\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*</p>
<p>匹配网址URL的正则表达式：http://([\w-]+\.)+[\w-]+(/[\w- ./?%&amp;=]*)?</p>
<p>利用正则表达式去除字串中重复的字符的算法程序：[注：此程序不正确，原因见本贴回复]</p>
<p>var s="abacabefgeeii"<br />
var s1=s.replace(/(.).*\1/g,"$1")<br />
var re=new RegExp("["+s1+"]","g")<br />
var s2=s.replace(re,"")<br />
alert(s1+s2) //结果为：abcefgi</p>
<p>我原来在CSDN上发贴寻求一个表达式来实现去除重复字符的方法，最终没有找到，这是我能想到的最简单的实现方法。思路是使用后向引用取出包括重复的字符，再以重复的字符建立第二个表达式，取到不重复的字符，两者串连。这个方法对于字符顺序有要求的字符串可能不适用。</p>
<p>得用正则表达式从URL地址中提取文件名的javascript程序，如下结果为page1</p>
<p>s="http://www.liuxq.cn/page1.htm"<br />
s=s.replace(/(.*\/){0,}([^\.]+).*/ig,"$2")<br />
alert(s)</p>
<p>利用正则表达式限制网页表单里的文本框输入内容：</p>
<p>用正则表达式限制只能输入中文：onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"</p>
<p>用正则表达式限制只能输入全角字符： onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"</p>
<p>用正则表达式限制只能输入数字：onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"</p>
<p>用正则表达式限制只能输入数字和英文：onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"</p>
]]></content:encoded>
			<wfw:commentRss>http://www.liuxq.cn/2009/10/394/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
