<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://www.jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://www.jackxiang.com/post/1447/</link>
<title><![CDATA[【原创】PHP通过fsocketopen  POST数据的代码]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[WEB2.0]]></category>
<pubDate>Wed, 03 Dec 2008 09:41:12 +0000</pubDate> 
<guid>http://www.jackxiang.com/post/1447/</guid> 
<description>
<![CDATA[ 
	post.php<br/><div class="code"> <br/>&lt;?php<br/>$cfg = array (<br/>&nbsp;&nbsp;// 用户名<br/>&nbsp;&nbsp;name=&gt;&quot;xdy108@126.com&quot;,<br/>&nbsp;&nbsp;// 密码<br/>&nbsp;&nbsp;pass=&gt;&quot;001002&quot;,<br/>&nbsp;&nbsp;&nbsp;&nbsp;cookie_file=&gt;&quot;cookie.txt&quot;<br/>);<br/>include(&quot;httpd.php&quot;);<br/>$c = new http(&quot;login.kaixin.com&quot;, &quot;/Login.do&quot;, &quot;POST&quot;);<br/>$c-&gt;set_val(&quot;email&quot;, $cfg&#91;&quot;name&quot;&#93;);<br/>$c-&gt;set_val(&quot;password&quot;, $cfg&#91;&quot;pass&quot;&#93;);<br/>$c-&gt;set_val(&quot;login_type&quot;, &quot;1000&quot;);<br/>$c-&gt;set_val(&quot;autoLogin&quot;, &quot;true&quot;);<br/>$c-&gt;set_val(&quot;origURL&quot;, &quot;http://www.kaixin.com/SysHome.do&quot;);<br/>$c-&gt;send();<br/>$source = $c-&gt;get_cnt(true);<br/>$s_regex = &#039;@(societyguester=&#92;w+;)@s&#039;;<br/>$a_matches = array ();<br/>preg_match_all($s_regex, $source, $a_matches);<br/>$cookie_login_key = $a_matches&#91;1&#93;&#91;1&#93;;//cookie放入这个变量<br/>$c2 = new http(&quot;gf.kaixin.com&quot;, &quot;/bank.do&quot;, &quot;POST&quot;, 80, $cookie_login_key);<br/>$c2-&gt;send();<br/>$source = $c2-&gt;get_cnt();<br/>echo $source;&nbsp;&nbsp;<br/>exit;<br/>?&gt;<br/></div><br/><br/>httpd.php<br/><br/><br/><div class="code">&lt;?php<br/>class http<br/>&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;var $host;<br/>&nbsp;&nbsp;&nbsp;&nbsp;var $port;<br/>&nbsp;&nbsp;&nbsp;&nbsp;var $method;<br/>&nbsp;&nbsp;&nbsp;&nbsp;var $url;<br/>&nbsp;&nbsp;&nbsp;&nbsp;var $errno;<br/>&nbsp;&nbsp;&nbsp;&nbsp;var $errstr;<br/>&nbsp;&nbsp;&nbsp;&nbsp;var $key;<br/>&nbsp;&nbsp;&nbsp;&nbsp;var $fp;<br/>&nbsp;&nbsp;&nbsp;&nbsp;var $cnt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;var $isok;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;function http($host, $url, $method = &quot;GET&quot;, $port = 80, $cookie = &quot;&quot;, $referer = &quot;&quot;)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;host = $host;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;port = $port;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;method = $method;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;url = $url;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;cookie = $cookie;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;referer = $referer;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;cnt = &quot;&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;key = array ();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;fp = false;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;isok = true;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;debug = false;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;function send()<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;cnt = &quot;&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_connect();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (!$this-&gt;isok)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return false;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$tmp = array ();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$d = &quot;&quot;;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;foreach ($this-&gt;key as $n=&gt;$v)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$tmp&#91;&#93; = $n.&quot;=&quot;.$v;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$d = implode(&quot;&amp;&quot;, $tmp);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ($this-&gt;method == &quot;GET&quot;)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ($d != &quot;&quot;)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite($this-&gt;fp, $this-&gt;method.&quot; &quot;.$this-&gt;url.&quot;?&quot;.$d.&quot; HTTP/1.0&#92;r&#92;n&quot;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite($this-&gt;fp, $this-&gt;method.&quot; &quot;.$this-&gt;url.&quot; HTTP/1.0&#92;r&#92;n&quot;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite($this-&gt;fp, $this-&gt;method.&quot; &quot;.$this-&gt;url.&quot; HTTP/1.0&#92;r&#92;n&quot;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite($this-&gt;fp, &quot;Content-Length: &quot;.strlen($d).&quot;&#92;r&#92;n&quot;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite($this-&gt;fp, &quot;Content-Type: application/x-www-form-urlencoded&#92;r&#92;n&quot;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite($this-&gt;fp, &quot;Cookie: &quot;.$this-&gt;cookie.&quot;&#92;r&#92;n&quot;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite($this-&gt;fp, &quot;Referer: &quot;.$this-&gt;referer.&quot;&#92;r&#92;n&quot;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite($this-&gt;fp, &quot;Host: &quot;.$this-&gt;host.&quot;&#92;r&#92;n&#92;r&#92;n&quot;);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if ($this-&gt;method == &quot;POST&quot;)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fwrite($this-&gt;fp, $d);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;while (!feof($this-&gt;fp))<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;cnt .= fgets($this-&gt;fp, 2048);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fclose($this-&gt;fp);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;function set_val($n, $v)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;key&#91;$n&#93; = rawurlencode($v);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;function get_val($n)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;parse_str($this-&gt;get_cnt());<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return $&#123;$n<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;;<br/>&#125;<br/><br/>function get_cnt($type = false)<br/>&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;if ($type == false)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return substr($this-&gt;cnt, strpos($this-&gt;cnt, &quot;&#92;r&#92;n&#92;r&#92;n&quot;)+4);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;else<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return $this-&gt;cnt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&#125;<br/><br/>function errmsg($msg)<br/>&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;isok = false;<br/>&nbsp;&nbsp;&nbsp;&nbsp;if ($this-&gt;debug)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo $msg;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;return false;<br/>&#125;<br/><br/>function _connect()<br/>&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;fp = fsockopen($this-&gt;host, $this-&gt;port, $this-&gt;errno, $this-&gt;errstr, 30);<br/>&nbsp;&nbsp;&nbsp;&nbsp;if (!$this-&gt;fp)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return $this-&gt;errmsg($this-&gt;errstr);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&nbsp;&nbsp;&nbsp;&nbsp;else<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;isok = true;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/>&#125;<br/>&#125;<br/>?&gt;</div><br/><br/>在一个项目里摘录出来的：<br/>&lt;?php<br/>$post = &#039;&#039;;<br/>while (list($k,$v) = each($comment)) &#123;<br/>&nbsp;&nbsp; $post .= rawurlencode($k).&quot;=&quot;.rawurlencode($v).&quot;&amp;&quot;;<br/>&#125;<br/><br/>$post = substr( $post , 0 , -1 );<br/>$len = strlen($post);<br/>$file = &quot;/interface/commentpost&quot;;<br/><br/>$fp = @fsockopen( $host , 80, $errno, $errstr, 30);<br/>if (!$fp) &#123;<br/>&nbsp;&nbsp;&nbsp;&nbsp;echo &quot;$errstr ($errno)&#92;n&quot;;die;<br/>&#125; else &#123;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;$receive = &#039;&#039;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;$out = &quot;POST $file HTTP/1.0&#92;r&#92;n&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;$out .= &quot;Host: $host&#92;r&#92;n&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;$out .= &quot;Accept: text/html,application/xhtml+xml,application/xml;q=0.8&#92;r&#92;n&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;$out .= &quot;Accept-Language: zh-cn,zh;q=0.5&#92;r&#92;n&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;$out .= &quot;Accept-Charset: GB2312,utf-8;q=0.7,*;q=0.7&#92;r&#92;n&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;//$out .= &quot;Keep-Alive: 300&#92;r&#92;n&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;$out .= &quot;Content-type: application/x-www-form-urlencoded&#92;r&#92;n&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;$out .= &quot;Connection: Close&#92;r&#92;n&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;$out .= &quot;Content-Length: $len&#92;r&#92;n&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;$out .=&quot;&#92;r&#92;n&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;$out .= $post.&quot;&#92;r&#92;n&quot;;<br/>&nbsp;&nbsp;&nbsp;&nbsp;fwrite($fp, $out);<br/>&nbsp;&nbsp;&nbsp;&nbsp;$line = fgets($fp,1024);<br/>&nbsp;&nbsp;&nbsp;&nbsp;while (!feof($fp)) &#123;<br/>&nbsp;&nbsp;$receive .= fgets($fp, 128);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&#125;<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;fclose($fp);<br/>&#125;<br/>//echo $receive;<br/>$receive = explode(&quot;&#92;r&#92;n&#92;r&#92;n&quot;,$receive);<br/>$receive = $receive[1];<br/>//echo $receive;<br/>return json_decode($receive);<br/>?&gt;
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post/1447/#blogcomment50687</link>
<title><![CDATA[[评论] 【原创】PHP通过fsocketopen  POST数据的代码]]></title> 
<author>阿里 &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 04 Dec 2008 02:25:09 +0000</pubDate> 
<guid>http://www.jackxiang.com/post/1447/#blogcomment50687</guid> 
<description>
<![CDATA[ 
	<br/>代码里没一个注释!多不好啊!这个变量名也看不明白是什么意思!要注意哦!
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post/1447/#blogcomment51530</link>
<title><![CDATA[[评论] 【原创】PHP通过fsocketopen  POST数据的代码]]></title> 
<author>医死不医活 &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Sun, 28 Feb 2010 13:08:28 +0000</pubDate> 
<guid>http://www.jackxiang.com/post/1447/#blogcomment51530</guid> 
<description>
<![CDATA[ 
	好不容易才看懂一点，关键是哪个HTTP。PHP文件
]]>
</description>
</item>
</channel>
</rss>