<?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>最优良人</title>
	<atom:link href="http://www.zui88.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.zui88.com/blog</link>
	<description>中山php&#124;最优网络</description>
	<lastBuildDate>Mon, 13 May 2013 04:56:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>用新浪搜狐腾讯jS接口取客户端IP及省份城市</title>
		<link>http://www.zui88.com/blog/view-434.html</link>
		<comments>http://www.zui88.com/blog/view-434.html#comments</comments>
		<pubDate>Mon, 13 May 2013 04:56:43 +0000</pubDate>
		<dc:creator>lin</dc:creator>
				<category><![CDATA[网站前端]]></category>

		<guid isPermaLink="false">http://www.zui88.com/blog/?p=434</guid>
		<description><![CDATA[新浪的IP地址查询接口：http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js 新浪多地域测试方法：http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&#38;ip=218.192.3.42 搜狐IP地址查询接口（默认GBK）：http://pv.sohu.com/cityjson 搜狐IP地址查询接口（可设置编码）：http://pv.sohu.com/cityjson?ie=utf-8 搜狐另外的IP地址查询接口：http://txt.go.sohu.com/ip/soip 腾讯的接口：http://fw.qq.com/ipaddress (腾讯的接口原本是最好用的，可现在打不开啦) 上面的接口中新浪的是js接口说明： &#60;script type="text/javascript" src="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js" charset="gb2312"&#62;&#60;/script&#62; &#60;script type="text/javascript"&#62; function ipmsg() { var ss = remote_ip_info['country']  + remote_ip_info['province']+ remote_ip_info['city']; document.getElementByIdx_x_x("&#60;%=HiddenField1.ClientID %&#62;").value = ss; } &#60;/script&#62; &#160;]]></description>
			<content:encoded><![CDATA[<p>新浪的IP地址查询接口：<a href="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js"><span style="color: #000000;">http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js</span></a></p>
<p>新浪多地域测试方法：<a href="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&amp;ip=218.192.3.42"><span style="color: #000000;">http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&amp;ip=218.192.3.42</span></a></p>
<p>搜狐IP地址查询接口（默认GBK）：<a href="http://pv.sohu.com/cityjson"><span style="color: #000000;">http://pv.sohu.com/cityjson</span></a></p>
<p>搜狐IP地址查询接口（可设置编码）：<a href="http://pv.sohu.com/cityjson?ie=utf-8"><span style="color: #000000;">http://pv.sohu.com/cityjson?ie=utf-8</span></a></p>
<p>搜狐另外的IP地址查询接口：<a href="http://txt.go.sohu.com/ip/soip"><span style="color: #000000;">http://txt.go.sohu.com/ip/soip</span></a></p>
<p>腾讯的接口：<a href="http://fw.qq.com/ipaddress" target="_blank"><span style="color: #000000;">http://fw.qq.com/ipaddress</span></a> (腾讯的接口原本是最好用的，可现在打不开啦)</p>
<p>上面的接口中新浪的是js接口说明：</p>
<p>&lt;script type="text/javascript" src="<a href="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js">http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js</a>" charset="gb2312"&gt;&lt;/script&gt;<br />
&lt;script type="text/javascript"&gt;<br />
function ipmsg() {<br />
var ss = remote_ip_info['country']  + remote_ip_info['province']+ remote_ip_info['city'];<br />
document.getElementByIdx_x_x("&lt;%=HiddenField1.ClientID %&gt;").value = ss;</p>
<p>}<br />
&lt;/script&gt;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zui88.com/blog/view-434.html/feed</wfw:commentRss>
		<slash:comments>689</slash:comments>
		</item>
		<item>
		<title>php压缩html : 清除换行符,清除制表符,去掉注释标记</title>
		<link>http://www.zui88.com/blog/view-431.html</link>
		<comments>http://www.zui88.com/blog/view-431.html#comments</comments>
		<pubDate>Sat, 30 Mar 2013 06:48:24 +0000</pubDate>
		<dc:creator>lin</dc:creator>
				<category><![CDATA[后端程序]]></category>

		<guid isPermaLink="false">http://www.zui88.com/blog/?p=431</guid>
		<description><![CDATA[/** * 压缩html : 清除换行符,清除制表符,去掉注释标记 * @param $string * @return 压缩后的$string * */ function compress_html($string) { $string = str_replace("\r\n", '', $string); //清除换行符 $string = str_replace("\n", '', $string); //清除换行符 $string = str_replace("\t", '', $string); //清除制表符 $pattern = array ( "/&#62; *([^ ]*) *&#60;/", //去掉注释标记 "/[\s]+/", "/&#60;!--[^!]*--&#62;/", "/\" /", "/ \"/", "'/\*[^*]*\*/'" ); $replace = array ( [...]]]></description>
			<content:encoded><![CDATA[<p>/**<br />
* 压缩html : 清除换行符,清除制表符,去掉注释标记<br />
* @param $string<br />
* @return 压缩后的$string<br />
* */<br />
function compress_html($string) {<br />
$string = str_replace("\r\n", '', $string); //清除换行符<br />
$string = str_replace("\n", '', $string); //清除换行符<br />
$string = str_replace("\t", '', $string); //清除制表符<br />
$pattern = array (<br />
"/&gt; *([^ ]*) *&lt;/", //去掉注释标记<br />
"/[\s]+/",<br />
"/&lt;!--[^!]*--&gt;/",<br />
"/\" /",<br />
"/ \"/",<br />
"'/\*[^*]*\*/'"<br />
);<br />
$replace = array (<br />
"&gt;\\1&lt;",<br />
" ",<br />
"",<br />
"\"",<br />
"\"",<br />
""<br />
);<br />
return preg_replace($pattern, $replace, $string);<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zui88.com/blog/view-431.html/feed</wfw:commentRss>
		<slash:comments>689</slash:comments>
		</item>
		<item>
		<title>php防止刷流量攻击</title>
		<link>http://www.zui88.com/blog/view-428.html</link>
		<comments>http://www.zui88.com/blog/view-428.html#comments</comments>
		<pubDate>Fri, 29 Mar 2013 10:55:10 +0000</pubDate>
		<dc:creator>lin</dc:creator>
				<category><![CDATA[后端程序]]></category>

		<guid isPermaLink="false">http://www.zui88.com/blog/?p=428</guid>
		<description><![CDATA[&#60;?php //查询禁止IP $ip =$_SERVER['REMOTE_ADDR']; $fileht=".htaccess2"; if(!file_exists($fileht))file_put_contents($fileht,""); $filehtarr=@file($fileht); if(in_array($ip."\r\n",$filehtarr))die("Warning:"."&#60;br&#62;"."Your IP address are forbided by some reason, IF you have any question Pls emill to shop@mydalle.com!"); //加入禁止IP $time=time(); $fileforbid="log/forbidchk.dat"; if(file_exists($fileforbid)) { if($time-filemtime($fileforbid)&#62;60)unlink($fileforbid); else{ $fileforbidarr=@file($fileforbid); if($ip==substr($fileforbidarr[0],0,strlen($ip))) { if($time-substr($fileforbidarr[1],0,strlen($time))&#62;600)unlink($fileforbid); elseif($fileforbidarr[2]&#62;600){file_put_contents($fileht,$ip."\r\n",FILE_APPEND);unlink($fileforbid);} else{$fileforbidarr[2]++;file_put_contents($fileforbid,$fileforbidarr);} } } } //防刷新 $str=""; $file="log/ipdate.dat"; if(!file_exists("log")&#38;&#38;!is_dir("log"))mkdir("log",0777); if(!file_exists($file))file_put_contents($file,""); $allowTime = 120;//防刷新时间 $allowNum=10;//防刷新次数 $uri=$_SERVER['REQUEST_URI']; $checkip=md5($ip); $checkuri=md5($uri); $yesno=true; $ipdate=@file($file); foreach($ipdate [...]]]></description>
			<content:encoded><![CDATA[<p>&lt;?php<br />
//查询禁止IP<br />
$ip =$_SERVER['REMOTE_ADDR'];<br />
$fileht=".htaccess2";<br />
if(!file_exists($fileht))file_put_contents($fileht,"");<br />
$filehtarr=@file($fileht);<br />
if(in_array($ip."\r\n",$filehtarr))die("Warning:"."&lt;br&gt;"."Your IP address are forbided by some reason, IF you have any question Pls emill to shop@mydalle.com!");</p>
<p>//加入禁止IP<br />
$time=time();<br />
$fileforbid="log/forbidchk.dat";<br />
if(file_exists($fileforbid))<br />
{ if($time-filemtime($fileforbid)&gt;60)unlink($fileforbid);<br />
else{<br />
$fileforbidarr=@file($fileforbid);<br />
if($ip==substr($fileforbidarr[0],0,strlen($ip)))<br />
{<br />
if($time-substr($fileforbidarr[1],0,strlen($time))&gt;600)unlink($fileforbid);<br />
elseif($fileforbidarr[2]&gt;600){file_put_contents($fileht,$ip."\r\n",FILE_APPEND);unlink($fileforbid);}<br />
else{$fileforbidarr[2]++;file_put_contents($fileforbid,$fileforbidarr);}<br />
}<br />
}<br />
}<br />
//防刷新<br />
$str="";<br />
$file="log/ipdate.dat";<br />
if(!file_exists("log")&amp;&amp;!is_dir("log"))mkdir("log",0777);<br />
if(!file_exists($file))file_put_contents($file,"");<br />
$allowTime = 120;//防刷新时间<br />
$allowNum=10;//防刷新次数<br />
$uri=$_SERVER['REQUEST_URI'];<br />
$checkip=md5($ip);<br />
$checkuri=md5($uri);<br />
$yesno=true;<br />
$ipdate=@file($file);<br />
foreach($ipdate as $k=&gt;$v)<br />
{ $iptem=substr($v,0,32);<br />
$uritem=substr($v,32,32);<br />
$timetem=substr($v,64,10);<br />
$numtem=substr($v,74);<br />
if($time-$timetem&lt;$allowTime){<br />
if($iptem!=$checkip)$str.=$v;<br />
else{<br />
$yesno=false;<br />
if($uritem!=$checkuri)$str.=$iptem.$checkuri.$time."1\r\n";<br />
elseif($numtem&lt;$allowNum)$str.=$iptem.$uritem.$timetem.($numtem+1)."\r\n";<br />
else<br />
{<br />
if(!file_exists($fileforbid)){$addforbidarr=array($ip."\r\n",time()."\r\n",1);file_put_contents($fileforbid,$addforbidarr);}<br />
file_put_contents("log/forbided_ip.log",$ip."--".date("Y-m-d H:i:s",time())."--".$uri."\r\n",FILE_APPEND);<br />
$timepass=$timetem+$allowTime-$time;<br />
die("Warning:"."&lt;br&gt;"."Sorry,you are forbided by refreshing frequently too much, Pls wait for ".$timepass." seconds to continue!");<br />
}<br />
}<br />
}<br />
}<br />
if($yesno) $str.=$checkip.$checkuri.$time."1\r\n";<br />
file_put_contents($file,$str);</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zui88.com/blog/view-428.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>php多维数组的搜索</title>
		<link>http://www.zui88.com/blog/view-425.html</link>
		<comments>http://www.zui88.com/blog/view-425.html#comments</comments>
		<pubDate>Mon, 17 Dec 2012 12:48:04 +0000</pubDate>
		<dc:creator>lin</dc:creator>
				<category><![CDATA[后端程序]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[数组]]></category>

		<guid isPermaLink="false">http://www.zui88.com/blog/?p=425</guid>
		<description><![CDATA[1 php搜索多维数组的键值 如下面例子: $foo[1]['a']['xx'] = 'bar 1'; $foo[1]['b']['xx'] = 'bar 2'; $foo[2]['a']['bb'] = 'bar 3'; $foo[2]['a']['yy'] = 'bar 4'; $foo[3]['c']['dd'] = 'bar 3'; $foo[3]['f']['gg'] = 'bar 3'; $foo['info'][1] = 'bar 5'; 如果要查找 bar 3 怎么进行查找呢。有三个结果，而这三个结果都要，看下面的函数： ------------------------------------------------------------------------------------------------------------------------------- function array_search_re($needle, $haystack, $a=0, $nodes_temp=array()){ global $nodes_found; $a++; foreach ($haystack as $key1=&#62;$value1) {     $nodes_temp[$a] = $key1;     if [...]]]></description>
			<content:encoded><![CDATA[<p>1 php搜索多维数组的键值</p>
<p>如下面例子:</p>
<p>$foo[1]['a']['xx'] = 'bar 1';<br />
$foo[1]['b']['xx'] = 'bar 2';<br />
$foo[2]['a']['bb'] = 'bar 3';<br />
$foo[2]['a']['yy'] = 'bar 4';<br />
$foo[3]['c']['dd'] = 'bar 3';<br />
$foo[3]['f']['gg'] = 'bar 3';<br />
$foo['info'][1] = 'bar 5';</p>
<p>如果要查找 bar 3 怎么进行查找呢。有三个结果，而这三个结果都要，看下面的函数：<br />
-------------------------------------------------------------------------------------------------------------------------------<br />
function array_search_re($needle, $haystack, $a=0, $nodes_temp=array()){<br />
global $nodes_found;<br />
$a++;<br />
foreach ($haystack as $key1=&gt;$value1) {<br />
    $nodes_temp[$a] = $key1;<br />
    if (is_array($value1)){   <br />
      array_search_re($needle, $value1, $a, $nodes_temp);<br />
    }<br />
    else if ($value1 === $needle){<br />
      $nodes_found[] = $nodes_temp;<br />
    }<br />
}<br />
return $nodes_found;<br />
}<br />
---------------------------------------------------------------------------------------------------------------------------------<br />
这个函数就可以把上面要查找到的内容全部返回出键名来<br />
$result = array_search_re('bar 3', $foo);</p>
<p>print_r($result);</p>
<p>输出结果为如下：<br />
Array ( [0] =&gt; Array ( [1] =&gt; 2 [2] =&gt; a [3] =&gt; bb )<br />
          [1] =&gt; Array ( [1] =&gt; 3 [2] =&gt; c [3] =&gt; dd )<br />
          [2] =&gt; Array ( [1] =&gt; 3 [2] =&gt; f [3] =&gt; gg )<br />
        )</p>
<p>1 php搜索多维数组的键名</p>
<p>function array_search_key($needle, $haystack){<br />
global $nodes_found;</p>
<p>foreach ($haystack as $key1=&gt;$value1) {<br />
 <br />
 if ($key1=== $needle){<br />
 <br />
  $nodes_found[] = $value1;<br />
       <br />
   }<br />
    if (is_array($value1)){   <br />
      array_search_key($needle, $value1);<br />
    }<br />
   <br />
   <br />
}</p>
<p>return $nodes_found;<br />
}<br />
$result = array_search_key('a', $foo);</p>
<p>print_r($result);</p>
<p>输出结果为如下：<br />
 </p>
<p>Array<br />
(<br />
    [0] =&gt; Array<br />
        (<br />
            [xx] =&gt; bar 1<br />
        )</p>
<p>    [1] =&gt; Array<br />
        (<br />
            [bb] =&gt; bar 3<br />
        )</p>
<p>    [2] =&gt; Array<br />
        (<br />
            [yy] =&gt; bar 4<br />
        )</p>
<p>)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zui88.com/blog/view-425.html/feed</wfw:commentRss>
		<slash:comments>743</slash:comments>
		</item>
		<item>
		<title>网站排名下降时是否是修改关键词的时机</title>
		<link>http://www.zui88.com/blog/view-422.html</link>
		<comments>http://www.zui88.com/blog/view-422.html#comments</comments>
		<pubDate>Tue, 04 Dec 2012 06:34:33 +0000</pubDate>
		<dc:creator>lin</dc:creator>
				<category><![CDATA[搜索优化]]></category>

		<guid isPermaLink="false">http://www.zui88.com/blog/?p=422</guid>
		<description><![CDATA[最近网站排名出现变动，几个排名一直稳定在百度前三的关键词出现下降，甚至完全被k的情况，经过分析，发现是收到友情链接的牵连，有三个友链网站被k，对方链回我的那个关键词排名直接没有。 刚好我也想把 中山网站建设 这个关键词设为主关键词，以前由于其他词的排名都比较稳定，不敢轻易修改，怕其他的收到影响，这次趁此机会一起改了，看看效果如果，验证一下  网站排名下降时是否是修改关键词的时机，也给其他站长做一个参考。]]></description>
			<content:encoded><![CDATA[<p>最近网站排名出现变动，几个排名一直稳定在百度前三的关键词出现下降，甚至完全被k的情况，经过分析，发现是收到友情链接的牵连，有三个友链网站被k，对方链回我的那个关键词排名直接没有。</p>
<p>刚好我也想把 <a title="中山网站建设" href="http://www.zui88.com/">中山网站建设</a> 这个关键词设为主关键词，以前由于其他词的排名都比较稳定，不敢轻易修改，怕其他的收到影响，这次趁此机会一起改了，看看效果如果，验证一下  网站排名下降时是否是修改关键词的时机，也给其他站长做一个参考。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zui88.com/blog/view-422.html/feed</wfw:commentRss>
		<slash:comments>310</slash:comments>
		</item>
		<item>
		<title>php过滤客户提交参数，防注入</title>
		<link>http://www.zui88.com/blog/view-417.html</link>
		<comments>http://www.zui88.com/blog/view-417.html#comments</comments>
		<pubDate>Sat, 24 Nov 2012 09:16:40 +0000</pubDate>
		<dc:creator>lin</dc:creator>
				<category><![CDATA[后端程序]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[过滤]]></category>

		<guid isPermaLink="false">http://www.zui88.com/blog/?p=417</guid>
		<description><![CDATA[以下代码实现过滤php的$_GET 和$_POST参数 /** * 安全防范 */ function Add_S($array) { foreach($array as $key=&#62;$value) { if(!is_array($value)) { $value = get_magic_quotes_gpc()?$value:addslashes($value); $array[$key]=filterHtml($value); } Else { Add_S($array[$key]); } } return $array; } function glstr($var) { if (is_array($var)) { return Add_S($var); } elseif(strlen($var)){ $var = get_magic_quotes_gpc()?$var:addslashes($var); $var = filterHtml($var); } return $var; } function filterHtml($html) { $farr = array( "/&#60;!DOCTYPE([^&#62;]*?)&#62;/eis", [...]]]></description>
			<content:encoded><![CDATA[<p>以下代码实现过滤php的$_GET 和$_POST参数</p>
<p>/**<br />
* 安全防范<br />
*/<br />
function Add_S($array)<br />
{<br />
foreach($array as $key=&gt;$value)<br />
{<br />
if(!is_array($value))<br />
{<br />
$value = get_magic_quotes_gpc()?$value:addslashes($value);<br />
$array[$key]=filterHtml($value);<br />
}<br />
Else<br />
{<br />
Add_S($array[$key]);<br />
}<br />
}<br />
return $array;<br />
}<br />
function glstr($var) {</p>
<p>if (is_array($var)) {<br />
return Add_S($var);<br />
}<br />
elseif(strlen($var)){<br />
$var = get_magic_quotes_gpc()?$var:addslashes($var);</p>
<p>$var = filterHtml($var);<br />
}<br />
return $var;<br />
}<br />
function filterHtml($html)<br />
{<br />
$farr = array(<br />
"/&lt;!DOCTYPE([^&gt;]*?)&gt;/eis",<br />
"/&lt;(\/?)(html|body|head|link|meta|base|input)([^&gt;]*?)&gt;/eis",<br />
"/&lt;(script|i?frame|style|title|form)(.*?)&lt;\/\\1&gt;/eis",<br />
"/(&lt;[^&gt;]*?\s+)on[a-z]+\s*?=(\"|')([^\\2]*)\\2([^&gt;]*?&gt;)/isU",//过滤javascript的on事件<br />
"/\s+/",//过滤多余的空白<br />
);<br />
$tarr = array(<br />
"",<br />
"",<br />
"",<br />
"\\1\\4",<br />
" ",<br />
);<br />
$html = preg_replace( $farr,$tarr,$html);<br />
return $html;<br />
}<br />
if (sizeof($_GET)) {<br />
foreach($_GET as $key =&gt; $value) {<br />
$_GET[$key] = glstr($value); //<br />
}</p>
<p>}<br />
if (sizeof($_POST)) {<br />
foreach($_POST as $key =&gt; $value) {<br />
$_POST[$key] = glstr($value); //<br />
}<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zui88.com/blog/view-417.html/feed</wfw:commentRss>
		<slash:comments>343</slash:comments>
		</item>
		<item>
		<title>php计算代码运行时间和使用内存</title>
		<link>http://www.zui88.com/blog/view-415.html</link>
		<comments>http://www.zui88.com/blog/view-415.html#comments</comments>
		<pubDate>Wed, 14 Nov 2012 08:28:49 +0000</pubDate>
		<dc:creator>lin</dc:creator>
				<category><![CDATA[后端程序]]></category>
		<category><![CDATA[memory_get_usage]]></category>

		<guid isPermaLink="false">http://www.zui88.com/blog/?p=415</guid>
		<description><![CDATA[&#60;?php //开始计时 $HeaderTime = microtime(true);//参数true表示返回浮点数值 //代码 //... printf(" total run: %.2f s&#60;br&#62;". "memory usage: %.2f M&#60;br&#62; ", microtime(true)-$HeaderTime, memory_get_usage() / 1024 / 1024 ); ?&#62; 结果： total runtime: 1.47 s memory usage: 77.09 M]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.zui88.com/blog/wp-admin/tools.php"></a></p>
<p><span style="font-size: small;"> &lt;?php</span></p>
<p><span style="font-size: small;">//开始计时</span></p>
<p><span style="font-size: small;"><br />
$HeaderTime = </span><span style="font-size: small;">micro<a href="http://www.linuxso.com/command/time.html" target="_blank"><span style="text-decoration: underline;">time</span></a>(true);//参数true表示返回浮点数值</span></p>
<p><span style="font-size: small;"> </span><span style="font-size: small;">//代码</span></p>
<p>//...</p>
<p><span style="font-size: small;">printf("    total run: %.2f s&lt;br&gt;".<br />
"memory usage: %.2f M&lt;br&gt; ",<br />
micro<a href="http://www.linuxso.com/command/time.html" target="_blank"><span style="text-decoration: underline;">time</span></a>(true)-$HeaderTime,<br />
memory_get_usage() / 1024 / 1024 );<br />
?&gt;<br />
结果：</span></p>
<p><span style="font-size: small;"> total runtime: 1.47 s</span></p>
<p><span style="font-size: small;">memory usage: 77.09 M </span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.zui88.com/blog/view-415.html/feed</wfw:commentRss>
		<slash:comments>454</slash:comments>
		</item>
		<item>
		<title>select下拉菜单实现友情链接跳转</title>
		<link>http://www.zui88.com/blog/view-413.html</link>
		<comments>http://www.zui88.com/blog/view-413.html#comments</comments>
		<pubDate>Sun, 07 Oct 2012 08:47:40 +0000</pubDate>
		<dc:creator>lin</dc:creator>
				<category><![CDATA[网站前端]]></category>
		<category><![CDATA[select]]></category>

		<guid isPermaLink="false">http://www.zui88.com/blog/?p=413</guid>
		<description><![CDATA[&#60;select name="select" class="home_left_select" onchange="window.location=this.options[this.selectedIndex].value"&#62; &#60;option value="#"&#62;友情链接&#60;/option&#62; &#60;option value="http://www.baidu.com"&#62;2&#60;/option&#62; &#60;option value="http://www.baidu.com"&#62;2&#60;/option&#62; &#60;option value="http://www.baidu.com"&#62;2&#60;/option&#62; &#60;option value="http://www.baidu.com"&#62;2&#60;/option&#62; &#60;option value="http://www.baidu.com"&#62;2&#60;/option&#62; &#60;/select&#62; 以上代码实现选中项跳转到指定链接]]></description>
			<content:encoded><![CDATA[<p>&lt;select name="select" class="home_left_select" onchange="window.location=this.options[this.selectedIndex].value"&gt;<br />
&lt;option value="#"&gt;友情链接&lt;/option&gt;<br />
&lt;option value="http://www.baidu.com"&gt;2&lt;/option&gt;<br />
&lt;option value="http://www.baidu.com"&gt;2&lt;/option&gt;<br />
&lt;option value="http://www.baidu.com"&gt;2&lt;/option&gt;<br />
&lt;option value="http://www.baidu.com"&gt;2&lt;/option&gt;<br />
&lt;option value="http://www.baidu.com"&gt;2&lt;/option&gt;<br />
&lt;/select&gt;</p>
<p>以上代码实现选中项跳转到指定链接</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zui88.com/blog/view-413.html/feed</wfw:commentRss>
		<slash:comments>399</slash:comments>
		</item>
		<item>
		<title>mysql STRICT_TRANS_TABLES严格模式下提示Field &#039;id&#039; doesn&#039;t have a default value</title>
		<link>http://www.zui88.com/blog/view-411.html</link>
		<comments>http://www.zui88.com/blog/view-411.html#comments</comments>
		<pubDate>Wed, 26 Sep 2012 03:42:48 +0000</pubDate>
		<dc:creator>lin</dc:creator>
				<category><![CDATA[数据库]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[STRICT_TRANS_TABLES]]></category>

		<guid isPermaLink="false">http://www.zui88.com/blog/?p=411</guid>
		<description><![CDATA[在别的服务器运行我的网站程序的时候，出现了Field 'id' doesn't have a default value 的提示，意思是这个值我没有提交数据，并且数据库结构没有设置默认值，由于对方的mysql服务器开启了STRICT_TRANS_TABLES严格模式，所以报错了 解决方法是： 如果自己的服务器，有权限修改my.ini的话，打开my.ini，查找 sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 修改为 sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 然后重启MYSQL 在别人的虚拟空间上当然不可能实现，所以根本的解决方法还是修改自己的数据结构，把非空的字段加上默认值，以后设计数据库要注意这一点，方便程序的移植]]></description>
			<content:encoded><![CDATA[<p>在别的服务器运行我的网站程序的时候，出现了Field 'id' doesn't have a default value 的提示，意思是这个值我没有提交数据，并且数据库结构没有设置默认值，由于对方的mysql服务器开启了STRICT_TRANS_TABLES严格模式，所以报错了</p>
<p>解决方法是：</p>
<p>如果自己的服务器，有权限修改my.ini的话，打开my.ini，查找<br />
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"</p>
<p>修改为</p>
<p>sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"</p>
<p>然后重启MYSQL</p>
<p>在别人的虚拟空间上当然不可能实现，所以根本的解决方法还是修改自己的数据结构，把非空的字段加上默认值，以后设计数据库要注意这一点，方便程序的移植</p>
<h2 class="title content-title"></h2>
]]></content:encoded>
			<wfw:commentRss>http://www.zui88.com/blog/view-411.html/feed</wfw:commentRss>
		<slash:comments>431</slash:comments>
		</item>
		<item>
		<title>smarty模版使用php标签，如何获取模版变量</title>
		<link>http://www.zui88.com/blog/view-409.html</link>
		<comments>http://www.zui88.com/blog/view-409.html#comments</comments>
		<pubDate>Sat, 22 Sep 2012 03:54:23 +0000</pubDate>
		<dc:creator>lin</dc:creator>
				<category><![CDATA[后端程序]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[smarty]]></category>

		<guid isPermaLink="false">http://www.zui88.com/blog/?p=409</guid>
		<description><![CDATA[已经assign一个模版变量$assign,由于要做特殊的循环输出，使用for循环，因此使用到了php标签，但是php语句和模版语句的变量作用域是不同的，因此不能直接获取到 {{php}} for($i=0;$i&#60;count($assign);$i=$i+2){ echo ' &#60;ul&#62; &#60;li&#62; &#60;span class="zz_pic"&#62;&#60;a href="'._url('picture',array('col_key'=&#62;'cert','pic_id'=&#62;$assign[$i][pic_id])).'" title=""&#62;&#60;img src="uploads/thumb_'.$assign[$i][pic].'" alt=""&#62;&#60;/a&#62;&#60;/span&#62; &#60;span class="zz_title"&#62;&#60;a href="'._url('picture',array('col_key'=&#62;'cert','pic_id'=&#62;$assign[$i][pic_id])).'" title=""&#62;'.$assign[$i][title].'&#60;/a&#62;&#60;/span&#62; &#60;/li&#62; &#60;li&#62; &#60;span class="zz_pic"&#62;&#60;a href="'._url('picture',array('col_key'=&#62;'cert','pic_id'=&#62;$assign[$i+1][pic_id])).'" title=""&#62;&#60;img src="uploads/thumb_'.$assign[$i+1][pic].'" alt=""&#62;&#60;/a&#62;&#60;/span&#62; &#60;span class="zz_title"&#62;&#60;a href="'._url('picture',array('col_key'=&#62;'cert','pic_id'=&#62;$assign[$i+1][pic_id])).'" title=""&#62;'.$assign[$i+1][title].'&#60;/a&#62;&#60;/span&#62; &#60;/li&#62;i&#62; &#60;/ul&#62;';} {{/php}} 解决的方法是：模版变量全部存在smarty的一个对象里面；只要在for之前进行赋值：$assign = $this-&#62;_tpl_vars[assign]; {{php}} $assign = $this-&#62;_tpl_vars[assign]; for($i=0;$i&#60;count($assign);$i=$i+2){ echo ' &#60;ul&#62; &#60;li&#62; &#60;span class="zz_pic"&#62;&#60;a href="'._url('picture',array('col_key'=&#62;'cert','pic_id'=&#62;$assign[$i][pic_id])).'" title=""&#62;&#60;img src="uploads/thumb_'.$assign[$i][pic].'" alt=""&#62;&#60;/a&#62;&#60;/span&#62; &#60;span class="zz_title"&#62;&#60;a href="'._url('picture',array('col_key'=&#62;'cert','pic_id'=&#62;$assign[$i][pic_id])).'" title=""&#62;'.$assign[$i][title].'&#60;/a&#62;&#60;/span&#62; &#60;/li&#62; [...]]]></description>
			<content:encoded><![CDATA[<p>已经assign一个模版变量$assign,由于要做特殊的循环输出，使用for循环，因此使用到了php标签，但是php语句和模版语句的变量作用域是不同的，因此不能直接获取到</p>
<p>  {{php}}</p>
<p>for($i=0;$i&lt;count($assign);$i=$i+2){<br />
echo '<br />
&lt;ul&gt;<br />
&lt;li&gt; &lt;span class="zz_pic"&gt;&lt;a href="'._url('picture',array('col_key'=&gt;'cert','pic_id'=&gt;$assign[$i][pic_id])).'" title=""&gt;&lt;img src="uploads/thumb_'.$assign[$i][pic].'" alt=""&gt;&lt;/a&gt;&lt;/span&gt; &lt;span class="zz_title"&gt;&lt;a href="'._url('picture',array('col_key'=&gt;'cert','pic_id'=&gt;$assign[$i][pic_id])).'" title=""&gt;'.$assign[$i][title].'&lt;/a&gt;&lt;/span&gt; &lt;/li&gt;<br />
&lt;li&gt; &lt;span class="zz_pic"&gt;&lt;a href="'._url('picture',array('col_key'=&gt;'cert','pic_id'=&gt;$assign[$i+1][pic_id])).'" title=""&gt;&lt;img src="uploads/thumb_'.$assign[$i+1][pic].'" alt=""&gt;&lt;/a&gt;&lt;/span&gt; &lt;span class="zz_title"&gt;&lt;a href="'._url('picture',array('col_key'=&gt;'cert','pic_id'=&gt;$assign[$i+1][pic_id])).'" title=""&gt;'.$assign[$i+1][title].'&lt;/a&gt;&lt;/span&gt; &lt;/li&gt;i&gt;</p>
<p>&lt;/ul&gt;';}<br />
{{/php}}</p>
<p>解决的方法是：模版变量全部存在smarty的一个对象里面；只要在for之前进行赋值：$assign = $this-&gt;_tpl_vars[assign];</p>
<p>{{php}}<br />
$assign = $this-&gt;_tpl_vars[assign];<br />
for($i=0;$i&lt;count($assign);$i=$i+2){<br />
echo '<br />
&lt;ul&gt;<br />
&lt;li&gt; &lt;span class="zz_pic"&gt;&lt;a href="'._url('picture',array('col_key'=&gt;'cert','pic_id'=&gt;$assign[$i][pic_id])).'" title=""&gt;&lt;img src="uploads/thumb_'.$assign[$i][pic].'" alt=""&gt;&lt;/a&gt;&lt;/span&gt; &lt;span class="zz_title"&gt;&lt;a href="'._url('picture',array('col_key'=&gt;'cert','pic_id'=&gt;$assign[$i][pic_id])).'" title=""&gt;'.$assign[$i][title].'&lt;/a&gt;&lt;/span&gt; &lt;/li&gt;<br />
&lt;li&gt; &lt;span class="zz_pic"&gt;&lt;a href="'._url('picture',array('col_key'=&gt;'cert','pic_id'=&gt;$assign[$i+1][pic_id])).'" title=""&gt;&lt;img src="uploads/thumb_'.$assign[$i+1][pic].'" alt=""&gt;&lt;/a&gt;&lt;/span&gt; &lt;span class="zz_title"&gt;&lt;a href="'._url('picture',array('col_key'=&gt;'cert','pic_id'=&gt;$assign[$i+1][pic_id])).'" title=""&gt;'.$assign[$i+1][title].'&lt;/a&gt;&lt;/span&gt; &lt;/li&gt;i&gt;</p>
<p>&lt;/ul&gt;';}<br />
{{/php}}</p>
]]></content:encoded>
			<wfw:commentRss>http://www.zui88.com/blog/view-409.html/feed</wfw:commentRss>
		<slash:comments>502</slash:comments>
		</item>
	</channel>
</rss>
