<?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>Free script resoure online - WP theme - Joomla theme - VBB theme - Graphic theme &#187; PHP code</title>
	<atom:link href="http://www.w3code.net/tag/php-code/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.w3code.net</link>
	<description>WP theme - Joomla theme - VBB theme - Graphic theme</description>
	<lastBuildDate>Wed, 01 Feb 2012 08:55:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Multi-User File Manager &amp; Uploader with Progress Bar</title>
		<link>http://www.w3code.net/multiuser-file-manager-uploader-progress-bar/</link>
		<comments>http://www.w3code.net/multiuser-file-manager-uploader-progress-bar/#comments</comments>
		<pubDate>Sat, 19 Sep 2009 17:53:41 +0000</pubDate>
		<dc:creator>Script</dc:creator>
				<category><![CDATA[Java script]]></category>
		<category><![CDATA[PHP script]]></category>
		<category><![CDATA[PHP code]]></category>
		<category><![CDATA[Review script PHP]]></category>
		<category><![CDATA[Script code]]></category>
		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.w3code.net/?p=1068</guid>
		<description><![CDATA[FileChucker is an AJAX-based web application that lets you accept file uploads on your own website. It&#8217;s simple to install (just one file), packed with features, fully configurable, nice looking, and very handy for when you want to share files with anyone. And during uploads FileChucker shows a progress bar &#38; table, so the user [...]]]></description>
			<content:encoded><![CDATA[<p>FileChucker is an AJAX-based web application that lets you accept file uploads on your own website. It&#8217;s simple to install (just one file), packed with features, fully configurable, nice looking, and very handy for when you want to share files with anyone. And during uploads FileChucker shows a progress bar &amp; table, so the user knows how much time is left before the upload is complete.</p>
<p>FileChucker can also function as a full-fledged online file manager for your server: it can allow moving/renaming/deleting of uploaded files &amp; folders right in the browser. Of course these features are configurable and password-protectable so you can customize FileChucker however you&#8217;d like.</p>
<p>To top it all off, FileChucker works in all major browsers (Moz/FF, IE, Opera, Safari), and runs on virtually any server, with no programming required! It&#8217;s a single Perl script, and most servers support Perl CGI scripts automatically; for the rare server that doesn&#8217;t, Perl can usually be easily added. If your site is more of a PHP site, don&#8217;t worry: FileChucker will run just fine alongside your PHP scripts, and you can even integrate it into your existing framework with a PHP virtual() call, if you want to!</p>

<a href='http://www.w3code.net/multiuser-file-manager-uploader-progress-bar/screenshot-step3-e21/' title='screenshot-step3-e21'><img width="150" height="150" src="http://www.w3code.net/wp-content/uploads//2009/09/screenshot-step3-e21-150x150.png" class="attachment-thumbnail" alt="screenshot-step3-e21" title="screenshot-step3-e21" /></a>
<a href='http://www.w3code.net/multiuser-file-manager-uploader-progress-bar/screenshot-step2-e21/' title='screenshot-step2-e21'><img width="150" height="150" src="http://www.w3code.net/wp-content/uploads//2009/09/screenshot-step2-e21-150x150.png" class="attachment-thumbnail" alt="screenshot-step2-e21" title="screenshot-step2-e21" /></a>
<a href='http://www.w3code.net/multiuser-file-manager-uploader-progress-bar/screenshot-step1-e21/' title='screenshot-step1-e21'><img width="150" height="150" src="http://www.w3code.net/wp-content/uploads//2009/09/screenshot-step1-e21-150x150.png" class="attachment-thumbnail" alt="screenshot-step1-e21" title="screenshot-step1-e21" /></a>

<p style="text-align: center;"><a target="_blank" href="http://rapidshare.com/files/26380344/FileChucker.rar">Download now </a></p>
  ]]></content:encoded>
			<wfw:commentRss>http://www.w3code.net/multiuser-file-manager-uploader-progress-bar/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PHP Firewall Script 2009</title>
		<link>http://www.w3code.net/php-firewall-script-2009/</link>
		<comments>http://www.w3code.net/php-firewall-script-2009/#comments</comments>
		<pubDate>Sat, 19 Sep 2009 17:47:13 +0000</pubDate>
		<dc:creator>Script</dc:creator>
				<category><![CDATA[PHP script]]></category>
		<category><![CDATA[PHP code]]></category>
		<category><![CDATA[PHP Firewall Script]]></category>
		<category><![CDATA[Review script PHP]]></category>
		<category><![CDATA[Script code]]></category>
		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.w3code.net/?p=1062</guid>
		<description><![CDATA[Do you worry about your site&#8217;s security? Has your site ever been hacked? Worry no more! FireWall Script is a PHP-based configurable firewall. Once installed, you can configure what mischievous things you want to be on the lookout for and let FireWall Script do the rest. With the logging functionality included, you can also go [...]]]></description>
			<content:encoded><![CDATA[<p>Do you worry about your site&#8217;s security? Has your site ever been hacked? Worry no more! FireWall Script is a PHP-based configurable firewall. Once installed, you can configure what mischievous things you want to be on the lookout for and let FireWall Script do the rest. With the logging functionality included, you can also go back and see if anyone is attempting to sidestep your rules and stay ahead of the game. Install FireWall Script, stop worrying about your site&#8217;s security, and start worrying about your site. Our software now has premade rule packs for most popular pieces of software available.</p>
<p style="text-align: left;"><a href="http://www.w3code.net/wp-content/uploads/2009/09/firewall-script.png"><img class="aligncenter size-large wp-image-1063" title="firewall-script" src="http://www.w3code.net/wp-content/uploads/2009/09/firewall-script-669x1024.png" alt="firewall-script" width="468" height="717" /></a></p>
<ol>
<li style="text-align: left;">It supports every PHP/MySQL script in existence<br />
That means all forums, Blogs, Custom Scripts or anything else you can think of is covered.</li>
<li style="text-align: left;">Only one edit required to install.<br />
You can install by performing just one file edit. Or if you prefer, use a .htaccess file to automatically load FWS on every page and forget file edits altogether!</li>
<li style="text-align: left;">100% protection guaranteed<br />
When properly configured, FWS can block any attacks on your site, guaranteed.</li>
</ol>
<p style="text-align: center;"><a target="_blank" href="http://rapidshare.com/files/135865030/sitefirewall_2008.rar">Download now</a></p>
  ]]></content:encoded>
			<wfw:commentRss>http://www.w3code.net/php-firewall-script-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Php youtube grabber</title>
		<link>http://www.w3code.net/php-youtube-grabber/</link>
		<comments>http://www.w3code.net/php-youtube-grabber/#comments</comments>
		<pubDate>Sat, 19 Sep 2009 17:42:57 +0000</pubDate>
		<dc:creator>Script</dc:creator>
				<category><![CDATA[PHP script]]></category>
		<category><![CDATA[PHP code]]></category>
		<category><![CDATA[Php youtube grabber]]></category>
		<category><![CDATA[Review script PHP]]></category>
		<category><![CDATA[Script code]]></category>
		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.w3code.net/?p=1060</guid>
		<description><![CDATA[Create a file index.php and upload it on your server. Run it for testing ). &#60;html&#62; &#60;head&#62; &#60;title&#62;YouTube Ripper&#60;/title&#62; &#60;style&#62; body, a, a:link, a:visited, a:hover, td { font-family: verdana, sans-serif; font-size: 8pt; color: black; } a { font-weight: bold; } input { font-family: verdana, sans-serif; font-size: 8pt; border: black 2px solid; padding: 2px; } #vid [...]]]></description>
			<content:encoded><![CDATA[<p>Create a file index.php and upload it on your server. Run it for testing <img src='http://www.w3code.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ).</p>
<blockquote><p><strong>&lt;html&gt;<br />
&lt;head&gt;<br />
&lt;title&gt;YouTube Ripper&lt;/title&gt;<br />
&lt;style&gt;<br />
body, a, a:link, a:visited, a:hover, td {<br />
font-family: verdana, sans-serif;<br />
font-size: 8pt;<br />
color: black;<br />
}<br />
a { font-weight: bold; }<br />
input {<br />
font-family: verdana, sans-serif;<br />
font-size: 8pt;<br />
border: black 2px solid;<br />
padding: 2px;<br />
}<br />
#vid {<br />
width: 500px;<br />
}<br />
&lt;/style&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
&lt;center&gt;<br />
&lt;h1&gt;Youtube ripper&lt;/h1&gt;<br />
&lt;a href=&#8217;index.php&#8217;&gt;Home&lt;/a&gt;<br />
&lt;form action=&#8221;get.php&#8221; method=&#8221;get&#8221; target=&#8221;ifr&#8221;&gt;<br />
Video URL : &lt;input id=&#8221;vid&#8221; type=&#8221;text&#8221; name=&#8221;vid&#8221; /&gt;<br />
&lt;select name=&#8221;mode&#8221;&gt;<br />
&lt;option value=&#8221;1&#8243;&gt;Just Give link&lt;/option&gt;<br />
&lt;option value=&#8221;2&#8243;&gt;Mirror and give link&lt;/option&gt;<br />
&lt;/select&gt;<br />
&lt;input type=&#8221;submit&#8221; value=&#8221;Go!&#8221; /&gt;<br />
&lt;/form&gt;<br />
&lt;table width=&#8221;500&#8243;&gt;&lt;tr&gt;&lt;td&gt;TOS: &lt;br /&gt;Please do not use this to obtain illegal files hosted on youtube. &lt;br /&gt;Mirrors are automatically cleared by the webmaster<br />
frequently, so be sure to download before this happens. &lt;br /&gt;The webmaster has the right to ban you from this server via I.P. address,<br />
ISP, or anything else. &lt;br /&gt;This is provided As-is, so if there are any bugs, or it doesn&#8217;t work for you, live with it, we will<br />
try to fix any bugs so email us. &lt;br /&gt;We are in no way affiliated with YouTube or any of their affiliates.&lt;br /&gt;By using our<br />
service you must agree to these terms.&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;<br />
&lt;iframe width=&#8221;500&#8243; frameborder=0 name=&#8221;ifr&#8221; id=&#8221;ifr&#8221;&gt;&lt;/iframe&gt;<br />
&lt;/center&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;</p>
<p>create a file get.php</p>
<p>&lt;html&gt;<br />
&lt;head&gt;<br />
&lt;title&gt;YouTube Ripper&lt;/title&gt;<br />
&lt;style&gt;<br />
body, a, a:link, a:visited, a:hover {<br />
font-family: verdana, sans-serif;<br />
font-size: 8pt;<br />
}<br />
input {<br />
font-family: verdana, sans-serif;<br />
font-size: 8pt;<br />
border: black 2px solid;<br />
padding: 2px;<br />
}<br />
#vid {<br />
width: 500px;<br />
}<br />
&lt;/style&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
&lt;?php</p>
<p>set_time_limit(&#8217;31337&#8242;);</p>
<p>// gettube youtube leecher</p>
<p>$regExpPattern = &#8216;/\&#8221;t\&#8221;\: \&#8221;([^\"\s]+)\&#8221;/i&#8217;;</p>
<p>$fData = file_get_contents($_GET['vid']);</p>
<p>preg_match($regExpPattern, $fData, $Params);</p>
<p>//print_r($Params);</p>
<p>$tID = $Params[1];</p>
<p>$vIDS = explode(&#8216;?v=&#8217;,$_GET['vid']);</p>
<p>$vID = $vIDS[1];</p>
<p>echo &#8220;&lt;a href=&#8217;http://www.youtube.com/get_video?video_id=$vID&amp;t=$tID&#8217;&gt;Download Video&lt;/a&gt; &lt;br /&gt;This is a FLV file, so rename it to whatever.flv, and open with an FLV player.&#8221;;</p>
<p>if($_GET['mode']==2) {</p>
<p>$regExpPattern = &#8216;/content\=\&#8221;([^\"\']+)\&#8221;/i&#8217;;</p>
<p>preg_match($regExpPattern, $fData, $Params);</p>
<p>$flName = $Params[1];</p>
<p>$flName = preg_replace(&#8220;/[^a-zA-Z0-9s]/&#8221;, &#8220;_&#8221;, $flName);</p>
<p>srand((double)microtime()*1000000);<br />
$flName = rand(0,100).$flName;</p>
<p>//die($flName);</p>
<p>$flData = file_get_contents(&#8220;http://www.youtube.com/get_video?video_id=$vID&amp;t=$tID&#8221;);</p>
<p>$fp = fopen(&#8220;$flName.flv&#8221;,&#8221;w&#8221;);<br />
fwrite($fp,$flData);<br />
fclose($fp);</p>
<p>echo &#8220;&lt;br /&gt;&lt;a href=&#8217;$flName.flv&#8217;&gt;Download (mirror)&lt;/a&gt;&#8221;;</p>
<p>}</p>
<p>?&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt; </strong></p></blockquote>
  ]]></content:encoded>
			<wfw:commentRss>http://www.w3code.net/php-youtube-grabber/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Scraping websites with PHP cURL under proxy</title>
		<link>http://www.w3code.net/scraping-websites-php-curl-proxy/</link>
		<comments>http://www.w3code.net/scraping-websites-php-curl-proxy/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 21:50:08 +0000</pubDate>
		<dc:creator>Script</dc:creator>
				<category><![CDATA[PHP script]]></category>
		<category><![CDATA[PHP code]]></category>
		<category><![CDATA[PHP cURL]]></category>
		<category><![CDATA[Review script PHP]]></category>
		<category><![CDATA[Script code]]></category>
		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.w3code.net/?p=1049</guid>
		<description><![CDATA[Scraping websites with PHP cURL is damn easy. Just do it the right way – use a proxy. Here is a simple function that does the job. Simple PHP cURL scraper: &#38;lt;?php function getPage&#40;$proxy, $url, $referer, $agent, $header, $timeout&#41; &#123;$ch = curl_init&#40;&#41;; &#160; curl_setopt&#40;$ch, CURLOPT_URL, $url&#41;; &#160; curl_setopt&#40;$ch, CURLOPT_HEADER, $header&#41;; &#160; curl_setopt&#40;$ch, CURLOPT_RETURNTRANSFER, 1&#41;; &#160; [...]]]></description>
			<content:encoded><![CDATA[<p>Scraping websites with <a target="_blank" href="http://www.php.net/curl">PHP cURL</a> is damn easy. Just do it the right way – use a proxy. Here is a simple function that does the job.</p>
<p><strong>Simple PHP cURL scraper:</strong></p>
<div class="codesnip-container" >
<div class="php codesnip" style="font-family:monospace;">
<ol>
<li class="li1">
<div class="de1"><span class="sy0">&amp;</span>lt<span class="sy0">;</span>?php <span class="kw2">function</span> getPage<span class="br0">&#40;</span><span class="re0">$proxy</span><span class="sy0">,</span> <span class="re0">$url</span><span class="sy0">,</span> <span class="re0">$referer</span><span class="sy0">,</span> <span class="re0">$agent</span><span class="sy0">,</span> <span class="re0">$header</span><span class="sy0">,</span> <span class="re0">$timeout</span><span class="br0">&#41;</span> <span class="br0">&#123;</span><span class="re0">$ch</span> <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/curl_init"><span class="kw3">curl_init</span></a><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_URL<span class="sy0">,</span> <span class="re0">$url</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_HEADER<span class="sy0">,</span> <span class="re0">$header</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_RETURNTRANSFER<span class="sy0">,</span> 1<span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_PROXY<span class="sy0">,</span> <span class="re0">$proxy</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_HTTPPROXYTUNNEL<span class="sy0">,</span> 1<span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_CONNECTTIMEOUT<span class="sy0">,</span> <span class="re0">$timeout</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_REFERER<span class="sy0">,</span> <span class="re0">$referer</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_USERAGENT<span class="sy0">,</span> <span class="re0">$agent</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$result</span><span class="br0">&#91;</span><span class="st_h">&#8216;EXE&#8217;</span><span class="br0">&#93;</span> <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/curl_exec"><span class="kw3">curl_exec</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$result</span><span class="br0">&#91;</span><span class="st_h">&#8216;INF&#8217;</span><span class="br0">&#93;</span> <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/curl_getinfo"><span class="kw3">curl_getinfo</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$result</span><span class="br0">&#91;</span><span class="st_h">&#8216;ERR&#8217;</span><span class="br0">&#93;</span> <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/curl_error"><span class="kw3">curl_error</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_close"><span class="kw3">curl_close</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">return</span> <span class="re0">$result</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">?<span class="sy0">&amp;</span>gt<span class="sy0">;</span></div>
</li>
</ol>
</div>
</div>
<p><strong>PHP cURL functions used:</strong></p>
<ul>
<li>curl_init – initializes a cURL session.</li>
<li>curl_setopt – sets and option for a cURL transfer.</li>
<li>curl_exec – performs a cURL session.</li>
<li>curl_getinfo – gets information about the last transfer.</li>
<li>curl_error – returns a string containing the last error for the current session.</li>
<li>curl_close – close a cURL session.</li>
</ul>
<p><strong>curl_setopt options used:</strong></p>
<ul>
<li>CURLOPT_URL – the URL to scrap.</li>
<li>CURLOPT_HEADER – inlude/exclude the header?</li>
<li>CURLOPT_RETURNTRANSFER – return the transfer as a string or output it out directly? Use 1, i.e. return.</li>
<li>CURLOPT_PROXY – the HTTP proxy to tunnel request through.</li>
<li>CURLOPT_HTTPPROXYTUNNEL – tunnel through a given HTTP proxy? Use 1, i.e. tunnel.</li>
<li>CURLOPT_CONNECTTIMEOUT – it’s obvious.</li>
<li>CURLOPT_REFERER – header to be used in a HTTP request.</li>
<li>CURLOPT_USERAGENT – “User Agent:” to be used in a HTTP request.</li>
</ul>
<p><strong>Scraper usage: </strong></p>
<div class="codesnip-container" >
<div class="php codesnip" style="font-family:monospace;">
<ol>
<li class="li1">
<div class="de1"><span class="sy0">&amp;</span>lt<span class="sy0">;</span> ?php</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$result</span> <span class="sy0">=</span> getPage<span class="br0">&#40;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;[proxy IP]:[port]&#8216;</span><span class="sy0">,</span> <span class="co1">// use valid proxy</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;http://www.google.com/search?q=twitter&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;http://www.google.com/&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.8) Gecko/2009032609 Firefox/3.0.8&#8242;</span><span class="sy0">,</span>1<span class="sy0">,</span>5<span class="br0">&#41;</span><span class="sy0">;</span>if <span class="br0">&#40;</span><a target="_blank" href="http://www.php.net/empty"><span class="kw3">empty</span></a><span class="br0">&#40;</span><span class="re0">$result</span><span class="br0">&#91;</span><span class="st_h">&#8216;ERR&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// Job&#8217;s done! Parse, save, etc.</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &#8230;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// WTF? Captcha or network problems?</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &#8230;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">?<span class="sy0">&amp;</span>gt<span class="sy0">;</span></div>
</li>
</ol>
</div>
</div>
<p>Note: <strong>Activate cURL in php.ini if required. </strong></p>
  ]]></content:encoded>
			<wfw:commentRss>http://www.w3code.net/scraping-websites-php-curl-proxy/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Checking proxy script</title>
		<link>http://www.w3code.net/checking-proxy-script/</link>
		<comments>http://www.w3code.net/checking-proxy-script/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 20:43:54 +0000</pubDate>
		<dc:creator>Script</dc:creator>
				<category><![CDATA[PHP script]]></category>
		<category><![CDATA[PHP code]]></category>
		<category><![CDATA[Review script PHP]]></category>
		<category><![CDATA[Script code]]></category>
		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.w3code.net/?p=1037</guid>
		<description><![CDATA[Finally, the last part of the post. Get ready for some “serious” programming. Include whatismyip.php. Don’t forget to specify URL. Copy getPage function to proxychecker.php or include it as a file. Specify a time limit. Write getProxies() function. Write deleteProxy($proxy) function. Specify badvars.php URL. Specify sleep intervals. Test and fix proxychecker.php. You don’t need to [...]]]></description>
			<content:encoded><![CDATA[<p>Finally, the last part of the post. Get ready for some “serious” programming.</p>
<ol>
<li>Include whatismyip.php. Don’t forget to specify URL.</li>
<li>Copy getPage function to proxychecker.php or include it as a file.</li>
<li>Specify a time limit.</li>
<li>Write getProxies() function.</li>
<li>Write deleteProxy($proxy) function.</li>
<li>Specify badvars.php URL.</li>
<li>Specify sleep intervals.</li>
<li>Test and fix proxychecker.php. You don’t need to upload the script to a server. You can use your PC for testing.</li>
<li>Deploy the script. Don’t use the same host for badvars.php and proxychecker.php.</li>
</ol>
<div class="codesnip-container" >
<div class="php codesnip" style="font-family:monospace;">
<ol>
<li class="li1">
<div class="de1"><span class="sy0">&amp;</span>lt<span class="sy0">;</span>?php</div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">/*</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* TODO 1</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* Include whatismyip.php. Don’t forget to specify URL.</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">*/</span><span class="coMULTI">/*</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* TODO 2</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* Copy getPage (http://www.fromzerotoseo.com/scraping-websites-php-curl-proxy/)</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* here or include it as a file.</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">*/</span><a target="_blank" href="http://www.php.net/set_time_limit"><span class="kw3">set_time_limit</span></a><span class="br0">&#40;</span><span class="coMULTI">/* TODO 3 specify a time limit */</span><span class="br0">&#41;</span><span class="sy0">;</span>function getProxies<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">/*</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* TODO 4</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* Load proxies from a file or database.</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* Return array of [IP]:[port] proxies or NULL.</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">*/</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span><span class="kw2">function</span> deleteProxy<span class="br0">&#40;</span><span class="re0">$proxy</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">/*</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* TODO 5</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* Delete $proxy from file/database or</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* mark as &#8216;bad&#8217;.</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">*/</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$whatIsMyIp</span> <span class="sy0">=</span> <span class="kw2">new</span> WhatIsMyIp<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$myIpAddress</span> <span class="sy0">=</span> <span class="re0">$whatIsMyIp</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>getServerIpAddress<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span><a target="_blank" href="http://www.php.net/empty"><span class="kw3">empty</span></a><span class="br0">&#40;</span><span class="re0">$myIpAddress</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">echo</span><span class="br0">&#40;</span><span class="st0">&quot;Can&#8217;t obtain IP address<span class="es1">\n</span>&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/exit"><span class="kw3">exit</span></a><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$proxies</span> <span class="sy0">=</span> getProxies<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span><a target="_blank" href="http://www.php.net/empty"><span class="kw3">empty</span></a><span class="br0">&#40;</span><span class="re0">$proxies</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">echo</span><span class="br0">&#40;</span><span class="st0">&quot;Can&#8217;t load proxies<span class="es1">\n</span>&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/exit"><span class="kw3">exit</span></a><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">foreach</span> <span class="br0">&#40;</span><span class="re0">$proxies</span> <span class="kw1">as</span> <span class="re0">$proxy</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$result</span> <span class="sy0">=</span> getPage<span class="br0">&#40;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$proxy</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">/*</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* TODO 6</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* Specify badvars.php URL</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">*/</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;http://www.google.com/&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.8) Gecko/2009032609 Firefox/3.0.8&#8242;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1">1<span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1">5<span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span><a target="_blank" href="http://www.php.net/empty"><span class="kw3">empty</span></a><span class="br0">&#40;</span><span class="re0">$result</span><span class="br0">&#91;</span><span class="st_h">&#8216;ERR&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span> <span class="br0">&#40;</span><a target="_blank" href="http://www.php.net/preg_match"><span class="kw3">preg_match</span></a><span class="br0">&#40;</span><span class="st0">&quot;/&quot;</span> <span class="sy0">.</span> <span class="re0">$myIpAddress</span> <span class="sy0">.</span> <span class="st0">&quot;/&quot;</span><span class="sy0">,</span> <span class="re0">$result</span><span class="br0">&#91;</span><span class="st_h">&#8216;EXE&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">deleteProxy<span class="br0">&#40;</span><span class="re0">$proxy</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">/*</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">* Good proxy!</span></div>
</li>
<li class="li1">
<div class="de1"><span class="coMULTI">*/</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">echo</span><span class="br0">&#40;</span><span class="re0">$result</span><span class="br0">&#91;</span><span class="st_h">&#8216;ERR&#8217;</span><span class="br0">&#93;</span> <span class="sy0">.</span> <span class="st_h">&#8216;\n&#8217;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">deleteProxy<span class="br0">&#40;</span><span class="re0">$proxy</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/sleep"><span class="kw3">sleep</span></a><span class="br0">&#40;</span><a target="_blank" href="http://www.php.net/rand"><span class="kw3">rand</span></a><span class="br0">&#40;</span><span class="coMULTI">/* TODO 7 [int] */</span><span class="sy0">,</span> <span class="coMULTI">/* [int] */</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">?<span class="sy0">&amp;</span>gt<span class="sy0">;</span></div>
</li>
</ol>
</div>
</div>
  ]]></content:encoded>
			<wfw:commentRss>http://www.w3code.net/checking-proxy-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IP address checker script</title>
		<link>http://www.w3code.net/ip-address-checker-script/</link>
		<comments>http://www.w3code.net/ip-address-checker-script/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 20:38:53 +0000</pubDate>
		<dc:creator>Script</dc:creator>
				<category><![CDATA[PHP script]]></category>
		<category><![CDATA[PHP code]]></category>
		<category><![CDATA[Review script PHP]]></category>
		<category><![CDATA[Script code]]></category>
		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.w3code.net/?p=1035</guid>
		<description><![CDATA[You need to know your IP address before checking anonymity. If you have only one server it’s not a problem. Hardcode and forget. But what if you have several servers? As I said before, automation is the king. Say thank you to people who cares about us. Grab URL(s) you like, extract IP and be [...]]]></description>
			<content:encoded><![CDATA[<p>You need to know your IP address before checking anonymity. If you have only one server it’s not a problem. Hardcode and forget. But what if you have several servers? As I said before, automation is the king.</p>
<p>Say thank you to people who cares about us. Grab URL(s) you like, extract IP and be happy. The WhatIsMyIp class (whatismyip.php) will help you in the beginning.</p>
<div class="codesnip-container" >
<div class="php codesnip" style="font-family:monospace;">
<ol>
<li class="li1">
<div class="de1"><span class="sy0">&amp;</span>lt<span class="sy0">;</span>?php</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">class</span> WhatIsMyIp <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">private</span> <span class="kw2">function</span> extractIpAddress<span class="br0">&#40;</span><span class="re0">$text</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$ip</span> <span class="sy0">=</span> <span class="kw4">NULL</span><span class="sy0">;</span>if <span class="br0">&#40;</span><a target="_blank" href="http://www.php.net/preg_match"><span class="kw3">preg_match</span></a><span class="br0">&#40;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st0">&quot;/(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)/&quot;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$text</span><span class="sy0">,</span> <span class="re0">$matches</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$ip</span> <span class="sy0">=</span> <span class="re0">$matches</span><span class="br0">&#91;</span>0<span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">return</span> <span class="re0">$ip</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">public</span> <span class="kw2">function</span> getServerIpAddress<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$file</span> <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/file_get_contents"><span class="kw3">file_get_contents</span></a><span class="br0">&#40;</span><span class="coMULTI">/*[URL YOU LIKE]*/</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">return</span> <span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>extractIpAddress<span class="br0">&#40;</span><span class="re0">$file</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">?<span class="sy0">&amp;</span>gt<span class="sy0">;</span></div>
</li>
</ol>
</div>
</div>
  ]]></content:encoded>
			<wfw:commentRss>http://www.w3code.net/ip-address-checker-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP cURL proxy checker</title>
		<link>http://www.w3code.net/php-curl-proxy-checker/</link>
		<comments>http://www.w3code.net/php-curl-proxy-checker/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 20:31:55 +0000</pubDate>
		<dc:creator>Script</dc:creator>
				<category><![CDATA[PHP script]]></category>
		<category><![CDATA[Script reviews]]></category>
		<category><![CDATA[PHP code]]></category>
		<category><![CDATA[PHP cURL]]></category>
		<category><![CDATA[Proxy checker script]]></category>
		<category><![CDATA[Review script PHP]]></category>
		<category><![CDATA[Script code]]></category>
		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.w3code.net/?p=1029</guid>
		<description><![CDATA[Most of the time I use server-side PHP scripts, because desktop proxy checkers don’t provide much flexibility. You don’t want to check, export and upload a list of proxies every time you need them, do you? That’s why PHP cURL is the best choice for me. Automation is the king! So, how to check proxies [...]]]></description>
			<content:encoded><![CDATA[<p>Most of the time I use server-side PHP scripts, because desktop proxy checkers don’t provide much flexibility. You don’t want to check, export and upload a list of proxies every time you need them, do you? That’s why PHP cURL is the best choice for me. Automation is the king!</p>
<p>So, how to check proxies with PHP? Let’s start with the proxy basics. What is an anonymous proxy? An anonymous proxy hides your IP address. Sometimes it informs a client that a proxy is being used. Sometimes it looks like a real host/user.</p>
<p>What should I look for when checking proxy anonymity? Make sure the real IP address is hidden. Check all variables that can expose your identity.</p>
<p>Warning! I’m not a security expert. Please let me know if any variable is missing from the list.</p>
<blockquote><p>REMOTE_ADDR</p>
<p>REMOTE_HOST</p>
<p>HTTP_X_FORWARDED_FOR</p>
<p>HTTP_VIA</p>
<p>HTTP_CLIENT_IP</p>
<p>HTTP_PROXY_CONNECTION</p>
<p>FORWARDED_FOR</p>
<p>X_FORWARDED_FOR</p>
<p>X_HTTP_FORWARDED_FOR</p>
<p>HTTP_FORWARDED</p>
<p>HTTP_REFERER</p></blockquote>
<p><strong>Printing “bad” variables</strong></p>
<p>Here is the first script (badvars.php) you need. It prints out required variables. Upload the file to a server and check if it’s working.</p>
<blockquote><p><strong>&lt;!DOCTYPE HTML PUBLIC &#8220;-//W3C//DTD HTML 4.01 Transitional//EN&#8221;&gt;<br />
&lt;html&gt;<br />
&lt;head&gt;<br />
&lt;meta http-equiv=&#8221;Content-Type&#8221; content=&#8221;text/html; charset=UTF-8&#8243;&gt;<br />
&lt;title&gt;I know you&lt;/title&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
&lt;p&gt;&lt;?php echo(&#8220;REMOTE_ADDR &#8221; . $_SERVER['REMOTE_ADDR'] . &#8220;\n&#8221;); ?&gt;&lt;/p&gt;<br />
&lt;p&gt;&lt;?php echo(&#8220;REMOTE_HOST &#8221; . $_SERVER['REMOTE_HOST'] . &#8220;\n&#8221;); ?&gt;&lt;/p&gt;<br />
&lt;p&gt;&lt;?php echo(&#8220;HTTP_X_FORWARDED_FOR &#8221; . $_SERVER['HTTP_X_FORWARDED_FOR'] . &#8220;\n&#8221;); ?&gt;&lt;/p&gt;<br />
&lt;p&gt;&lt;?php echo(&#8220;HTTP_VIA &#8221; . $_SERVER['HTTP_VIA'] . &#8220;\n&#8221;); ?&gt;&lt;/p&gt;<br />
&lt;p&gt;&lt;?php echo(&#8220;HTTP_CLIENT_IP &#8221; . $_SERVER['HTTP_CLIENT_IP'] . &#8220;\n&#8221;); ?&gt;&lt;/p&gt;<br />
&lt;p&gt;&lt;?php echo(&#8220;HTTP_PROXY_CONNECTION &#8221; . $_SERVER['HTTP_PROXY_CONNECTION'] . &#8220;\n&#8221;); ?&gt;&lt;/p&gt;<br />
&lt;p&gt;&lt;?php echo(&#8220;FORWARDED_FOR &#8221; . $_SERVER['FORWARDED_FOR'] . &#8220;\n&#8221;); ?&gt;&lt;/p&gt;<br />
&lt;p&gt;&lt;?php echo(&#8220;X_FORWARDED_FOR &#8221; . $_SERVER['X_FORWARDED_FOR'] . &#8220;\n&#8221;); ?&gt;&lt;/p&gt;<br />
&lt;p&gt;&lt;?php echo(&#8220;X_HTTP_FORWARDED_FOR &#8221; . $_SERVER['X_HTTP_FORWARDED_FOR'] . &#8220;\n&#8221;); ?&gt;&lt;/p&gt;<br />
&lt;p&gt;&lt;?php echo(&#8220;HTTP_FORWARDED &#8221; . $_SERVER['HTTP_FORWARDED'] . &#8220;\n&#8221;); ?&gt;&lt;/p&gt;<br />
&lt;br&gt;<br />
&lt;p&gt;&lt;?php echo(&#8220;HTTP_REFERER &#8221; . $_SERVER['HTTP_REFERER'] . &#8220;\n&#8221;); ?&gt;&lt;/p&gt;<br />
&lt;p&gt;&lt;?php echo(&#8220;HTTP_USER_AGENT &#8221; . $_SERVER['HTTP_USER_AGENT'] . &#8220;\n&#8221;); ?&gt;&lt;/p&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;</strong></p></blockquote>
  ]]></content:encoded>
			<wfw:commentRss>http://www.w3code.net/php-curl-proxy-checker/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>PHP anonymity checker script</title>
		<link>http://www.w3code.net/php-anonymity-checker-script/</link>
		<comments>http://www.w3code.net/php-anonymity-checker-script/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 20:23:32 +0000</pubDate>
		<dc:creator>Script</dc:creator>
				<category><![CDATA[PHP script]]></category>
		<category><![CDATA[PHP code]]></category>
		<category><![CDATA[Review script PHP]]></category>
		<category><![CDATA[Script code]]></category>
		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.w3code.net/?p=1026</guid>
		<description><![CDATA[PHP class : socks 4, socks 5 and proxy lists validation (based on curl lib). Anonymity is one of my favourites’ interests. This simple PHP 5 class validates Socks4 , Socks5 and Proxy lists. Version: 0.2 &#38;lt;?php// PHP anonymity checker // // &#160; (c) Involutive 2008 http://www.involutive.com // &#160; author: Paolo Ardoino &#38;lt; paolo@involutive.com &#38;gt; [...]]]></description>
			<content:encoded><![CDATA[<p>PHP class : socks 4, socks 5 and proxy lists validation (based on curl lib).</p>
<p>Anonymity is one of my favourites’ interests. This simple PHP 5 class validates Socks4 , Socks5 and Proxy lists.</p>
<p><strong>Version: 0.2 </strong></p>
<div class="codesnip-container" >
<div class="php codesnip" style="font-family:monospace;">
<ol>
<li class="li1">
<div class="de1"><span class="sy0">&amp;</span>lt<span class="sy0">;</span>?php<span class="co1">// PHP anonymity checker</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; (c) Involutive 2008 http://www.involutive.com</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; author: Paolo Ardoino &amp;lt; paolo@involutive.com &amp;gt;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp;Usage:</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$anons = array(</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;array(&quot;ip&quot; =&amp;gt; &quot;1.2.3.4&quot;, &quot;port&quot; =&amp;gt; 8080, &quot;type&quot; =&amp;gt; &quot;socks4&quot;),</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;array(&quot;ip&quot; =&amp;gt; &quot;1.2.3.5&quot;, &quot;port&quot; =&amp;gt; 8080, &quot;type&quot; =&amp;gt; &quot;socks5&quot;),</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;array(&quot;ip&quot; =&amp;gt; &quot;1.2.3.6&quot;, &quot;port&quot; =&amp;gt; 8080, &quot;type&quot; =&amp;gt; &quot;proxy&quot;)</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;);</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$pa = new phpanon(array(&quot;anons&quot; =&amp;gt; $anons));</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$pa-&amp;gt;check();</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$pa-&amp;gt;done();</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$anons is an array of triples (&quot;ip&quot; =&amp;gt; ip, &quot;port&quot; =&amp;gt; port, &quot;type&quot; =&amp;gt; type)</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;ip: ip address of the socks / proxy</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;port: port of the socks / proxy</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;type: socks5 (for socks5), socks4 (for socks4), proxy (for proxy)</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Other options:</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&quot;url&quot; =&amp;gt; &quot;http://www.example.com&quot; : connection test page</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&quot;needle&quot; =&amp;gt; &quot;someword&quot; : some word contained in the page set by &quot;url&quot;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&quot;user_agent&quot; =&amp;gt; &quot;Mozilla Firefox&quot; : set an alternative user_agent</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&quot;url_referer&quot; =&amp;gt; &quot;http://www.mypage.com&quot; : set a referer urlclass phpanon {</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">public</span> <span class="re0">$anons</span> <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/array"><span class="kw3">array</span></a><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">public</span> <span class="re0">$opts</span> <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/array"><span class="kw3">array</span></a><span class="br0">&#40;</span><span class="st0">&quot;user_agent&quot;</span> <span class="sy0">=&amp;</span>gt<span class="sy0">;</span> <span class="st0">&quot;&quot;</span><span class="sy0">,</span> <span class="st0">&quot;url_referer&quot;</span> <span class="sy0">=&amp;</span>gt<span class="sy0">;</span> <span class="st0">&quot;&quot;</span><span class="sy0">,</span> <span class="st0">&quot;url&quot;</span> <span class="sy0">=&amp;</span>gt<span class="sy0">;</span> <span class="st0">&quot;http://www.google.com&quot;</span><span class="sy0">,</span> <span class="st0">&quot;needle&quot;</span> <span class="sy0">=&amp;</span>gt<span class="sy0">;</span> <span class="st0">&quot;groups&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span>function __construct<span class="br0">&#40;</span><span class="re0">$opts</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><a target="_blank" href="http://www.php.net/sizeof"><span class="kw3">sizeof</span></a><span class="br0">&#40;</span><span class="re0">$opts</span><span class="br0">&#91;</span><span class="st0">&quot;anons&quot;</span><span class="br0">&#93;</span><span class="br0">&#41;</span> <span class="sy0">&amp;</span>gt<span class="sy0">;</span> 0<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>anons <span class="sy0">=</span> <span class="re0">$opts</span><span class="br0">&#91;</span><span class="st0">&quot;anons&quot;</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$opts</span><span class="br0">&#91;</span><span class="st0">&quot;user_agent&quot;</span><span class="br0">&#93;</span> <span class="sy0">!=</span> <span class="st0">&quot;&quot;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>opts<span class="br0">&#91;</span><span class="st0">&quot;user_agent&quot;</span><span class="br0">&#93;</span> <span class="sy0">=</span> <span class="re0">$opts</span><span class="br0">&#91;</span><span class="st0">&quot;user_agent&quot;</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$opts</span><span class="br0">&#91;</span><span class="st0">&quot;url_referer&quot;</span><span class="br0">&#93;</span> <span class="sy0">!=</span> <span class="st0">&quot;&quot;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>opts<span class="br0">&#91;</span><span class="st0">&quot;url_referer&quot;</span><span class="br0">&#93;</span> <span class="sy0">=</span> <span class="re0">$opts</span><span class="br0">&#91;</span><span class="st0">&quot;url_referer&quot;</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">function</span> check<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">echo</span> <span class="st0">&quot;PHP anonymity checker v0.2<span class="es1">\n</span><span class="es1">\t</span>(c) 2007 Involutive http://www.involutive.com<span class="es1">\n</span>&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">echo</span> <span class="st0">&quot;<span class="es1">\t</span>Author: Paolo Ardoino &amp;lt; paolo@involutive.com &amp;gt;<span class="es1">\n</span>&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><a target="_blank" href="http://www.php.net/sizeof"><span class="kw3">sizeof</span></a><span class="br0">&#40;</span><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>anons<span class="br0">&#41;</span> <span class="sy0">&amp;</span>gt<span class="sy0">;</span> 0<span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">for</span><span class="br0">&#40;</span><span class="re0">$i</span> <span class="sy0">=</span> 0<span class="sy0">,</span> <span class="re0">$cnt_good</span> <span class="sy0">=</span> 0<span class="sy0">,</span> <span class="re0">$cnt_gad</span> <span class="sy0">=</span> 0<span class="sy0">,</span> <span class="re0">$y</span> <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/sizeof"><span class="kw3">sizeof</span></a><span class="br0">&#40;</span><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>anons<span class="br0">&#41;</span><span class="sy0">;</span> <span class="re0">$i</span> <span class="sy0">&amp;</span>lt<span class="sy0">;</span> <span class="re0">$y</span><span class="sy0">;</span> <span class="re0">$i</span><span class="sy0">++</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$anon</span> <span class="sy0">=</span> <span class="sy0">&amp;</span>amp<span class="sy0">;</span><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>anons<span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$anon</span><span class="br0">&#91;</span><span class="st0">&quot;ip&quot;</span><span class="br0">&#93;</span> <span class="sy0">!=</span> <span class="st0">&quot;&quot;</span> <span class="sy0">&amp;</span>amp<span class="sy0">;&amp;</span>amp<span class="sy0">;</span> <span class="re0">$anon</span><span class="br0">&#91;</span><span class="st0">&quot;port&quot;</span><span class="br0">&#93;</span> <span class="sy0">!=</span> <span class="st0">&quot;&quot;</span> <span class="sy0">&amp;</span>amp<span class="sy0">;&amp;</span>amp<span class="sy0">;</span> <span class="re0">$anon</span><span class="br0">&#91;</span><span class="st0">&quot;type&quot;</span><span class="br0">&#93;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">echo</span> <span class="st0">&quot;Checking &quot;</span><span class="sy0">.</span><span class="re0">$anon</span><span class="br0">&#91;</span><span class="st0">&quot;ip&quot;</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="st0">&quot;:&quot;</span><span class="sy0">.</span><span class="re0">$anon</span><span class="br0">&#91;</span><span class="st0">&quot;port&quot;</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="st0">&quot; [ type &quot;</span><span class="sy0">.</span><span class="re0">$anon</span><span class="br0">&#91;</span><span class="st0">&quot;type&quot;</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="st0">&quot; ] &#8230; &quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$ch</span> <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/curl_init"><span class="kw3">curl_init</span></a><span class="br0">&#40;</span><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>opts<span class="br0">&#91;</span><span class="st0">&quot;url&quot;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_RETURNTRANSFER<span class="sy0">,</span> 1<span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_HEADER<span class="sy0">,</span> 0<span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_CONNECTTIMEOUT<span class="sy0">,</span> 10<span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_TIMEOUT<span class="sy0">,</span> 10<span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_FOLLOWLOCATION<span class="sy0">,</span> 1<span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>opts<span class="br0">&#91;</span><span class="st0">&quot;user_agent&quot;</span><span class="br0">&#93;</span> <span class="sy0">!=</span> <span class="st0">&quot;&quot;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_USERAGENT<span class="sy0">,</span> <span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>opts<span class="br0">&#91;</span><span class="st0">&quot;user_agent&quot;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>opts<span class="br0">&#91;</span><span class="st0">&quot;url_referer&quot;</span><span class="br0">&#93;</span> <span class="sy0">!=</span> <span class="st0">&quot;&quot;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_REFERER<span class="sy0">,</span> <span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>opts<span class="br0">&#91;</span><span class="st0">&quot;url_referer&quot;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_PROXY<span class="sy0">,</span> <span class="re0">$anon</span><span class="br0">&#91;</span><span class="st0">&quot;ip&quot;</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="st0">&quot;:&quot;</span><span class="sy0">.</span><span class="re0">$anon</span><span class="br0">&#91;</span><span class="st0">&quot;port&quot;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$anon</span><span class="br0">&#91;</span><span class="st0">&quot;type&quot;</span><span class="br0">&#93;</span> <span class="sy0">==</span> <span class="st0">&quot;socks4&quot;</span><span class="br0">&#41;</span> <a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_PROXYTYPE<span class="sy0">,</span> CURLPROXY_SOCKS4<span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">else</span> <span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$anon</span><span class="br0">&#91;</span><span class="st0">&quot;type&quot;</span><span class="br0">&#93;</span> <span class="sy0">==</span> <span class="st0">&quot;socks5&quot;</span><span class="br0">&#41;</span> <a target="_blank" href="http://www.php.net/curl_setopt"><span class="kw3">curl_setopt</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="sy0">,</span> CURLOPT_PROXYTYPE<span class="sy0">,</span> CURLPROXY_SOCKS5<span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$html</span> <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/curl_exec"><span class="kw3">curl_exec</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><a target="_blank" href="http://www.php.net/curl_errno"><span class="kw3">curl_errno</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="br0">&#41;</span> <span class="sy0">||</span> <span class="re0">$html</span> <span class="sy0">==</span> <span class="st0">&quot;&quot;</span> <span class="sy0">||</span> <a target="_blank" href="http://www.php.net/strpos"><span class="kw3">strpos</span></a><span class="br0">&#40;</span><span class="re0">$html</span><span class="sy0">,</span> <span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>opts<span class="br0">&#91;</span><span class="st0">&quot;needle&quot;</span><span class="br0">&#93;</span><span class="br0">&#41;</span> <span class="sy0">===</span> <span class="kw4">FALSE</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$anon</span><span class="br0">&#91;</span><span class="st0">&quot;status&quot;</span><span class="br0">&#93;</span> <span class="sy0">=</span> <span class="nu0">0</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$cnt_gad</span><span class="sy0">++;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">echo</span> <span class="st0">&quot;not working<span class="es1">\n</span>&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$anon</span><span class="br0">&#91;</span><span class="st0">&quot;status&quot;</span><span class="br0">&#93;</span> <span class="sy0">=</span> <span class="nu0">1</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$cnt_good</span><span class="sy0">++;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">echo</span> <span class="st0">&quot;working<span class="es1">\n</span>&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/curl_close"><span class="kw3">curl_close</span></a> <span class="br0">&#40;</span><span class="re0">$ch</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/unset"><span class="kw3">unset</span></a><span class="br0">&#40;</span><span class="re0">$ch</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/unset"><span class="kw3">unset</span></a><span class="br0">&#40;</span><span class="re0">$anon</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">echo</span> <span class="st0">&quot;Done.<span class="es1">\n</span>&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">?<span class="sy0">&amp;</span>gt<span class="sy0">;</span></div>
</li>
</ol>
</div>
</div>
<blockquote><p><strong> </strong></p></blockquote>
  ]]></content:encoded>
			<wfw:commentRss>http://www.w3code.net/php-anonymity-checker-script/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP Proxy Detector script source</title>
		<link>http://www.w3code.net/php-proxy-detector-script-source/</link>
		<comments>http://www.w3code.net/php-proxy-detector-script-source/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 20:19:25 +0000</pubDate>
		<dc:creator>Script</dc:creator>
				<category><![CDATA[PHP script]]></category>
		<category><![CDATA[PHP code]]></category>
		<category><![CDATA[Review script PHP]]></category>
		<category><![CDATA[Script code]]></category>
		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.w3code.net/?p=1024</guid>
		<description><![CDATA[I found this class looking for something else actually but I remembered I needed some while ago something similar and I never found one. I&#8217;m sure it will help a lot of developers who try to detect click frauds or something else. The class will scan the headers of the visitor which (in most cases [...]]]></description>
			<content:encoded><![CDATA[<p>I found this class looking for something else actually but I remembered I needed some while ago something similar and I never found one. I&#8217;m sure it will help a lot of developers who try to detect click frauds or something else. The class will scan the headers of the visitor which (in most cases when using proxies) is altered by the server. I will keep the code intact so visitors can give credits to the author <img src='http://www.w3code.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  We will have to create 4 files. Let&#8217;s start with the first one called &#8220;proxy_detector.class.php&#8221; which is our little core with the class in clause. Copy paste this code and save it:</p>
<div class="codesnip-container" >
<div class="php codesnip" style="font-family:monospace;">
<ol>
<li class="li1">
<div class="de1"><span class="sy0">&amp;</span>lt<span class="sy0">;</span>?</div>
</li>
<li class="li1">
<div class="de1"><span class="co4">/**</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; Proxy Detector v0.1</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; copyrights by: Daantje Eeltink (me@daantje.nl)</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; http://www.daantje.nl</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; first build: Mon Sep 18 21:43:48 CEST 2006</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; last build: Tue Sep 19 10:37:12 CEST 2006</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; Description:</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; This class can detect if a visitor uses a proxy server by scanning the</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; headers returned by the user client. When the user uses a proxy server,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; most of the proxy servers alter the header. The header is returned to</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; PHP in the array $_SERVER.</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; License:</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; GPL v2 licence. (http://www.gnu.org/copyleft/gpl.txt)</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; Support:</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; If you like this class and find it usefull, please donate one or two</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; coins to my PayPal account me@daantje.nl</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; Todo:</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Add open proxy black list scan.</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*/</span><span class="kw2">class</span> proxy_detector <span class="br0">&#123;</span><span class="co4">/**</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* CONSTRUCTOR</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; Set defaults&#8230;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*/</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">function</span> proxy_detector<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>config <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/array"><span class="kw3">array</span></a><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>lastLog <span class="sy0">=</span> <span class="st0">&quot;&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//set default headers</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>scan_headers <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/array"><span class="kw3">array</span></a><span class="br0">&#40;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;HTTP_VIA&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;HTTP_X_FORWARDED_FOR&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;HTTP_FORWARDED_FOR&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;HTTP_X_FORWARDED&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;HTTP_FORWARDED&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;HTTP_CLIENT_IP&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;HTTP_FORWARDED_FOR_IP&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;VIA&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;X_FORWARDED_FOR&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;FORWARDED_FOR&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;X_FORWARDED&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;FORWARDED&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;CLIENT_IP&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;FORWARDED_FOR_IP&#8217;</span><span class="sy0">,</span></div>
</li>
<li class="li1">
<div class="de1"><span class="st_h">&#8216;HTTP_PROXY_CONNECTION&#8217;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co4">/**</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* VOID setHeader( STRING $trigger )</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; Set new header trigger&#8230;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*/</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">function</span> setHeader<span class="br0">&#40;</span><span class="re0">$trigger</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>scan_headers<span class="br0">&#91;</span><span class="br0">&#93;</span> <span class="sy0">=</span> <span class="re0">$trigger</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co4">/**</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* ARRAY $triggers = getHeaders( VOID )</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; Get all triggers in one array</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*/</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">function</span> getHeaders<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">return</span> <span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>scan_headers<span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co4">/**</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* VOID setConfig( STRING $key, &nbsp;STRING $value)</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; Set config line&#8230;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*/</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">function</span> setConfig<span class="br0">&#40;</span><span class="re0">$key</span><span class="sy0">,</span><span class="re0">$value</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>config<span class="br0">&#91;</span><span class="re0">$key</span><span class="br0">&#93;</span> <span class="sy0">=</span> <span class="re0">$value</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co4">/**</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* MIXED $config = getConfig( [STRING $key] )</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; Get all config in one array, or only one config value as a string.</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*/</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">function</span> getConfig<span class="br0">&#40;</span><span class="re0">$key</span><span class="sy0">=</span><span class="st_h">&#8221;</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$key</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">return</span> <span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>config<span class="br0">&#91;</span><span class="re0">$key</span><span class="br0">&#93;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">else</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">return</span> <span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>config<span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co4">/**</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* STRING $log = getLog( VOID )</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; Get last logged information. Only works AFTER calling detect()!</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*/</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">function</span> getLog<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">return</span> <span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>lastLog<span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co4">/**</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* BOOL $proxy = detect( VOID )</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">* &nbsp; &nbsp; &nbsp; Start detection and return true if a proxy server is detected&#8230;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co4">*/</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw2">function</span> detect<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$log</span> <span class="sy0">=</span> <span class="st0">&quot;&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//scan all headers</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">foreach</span><span class="br0">&#40;</span><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>scan_headers <span class="kw1">as</span> <span class="re0">$i</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//proxy detected? lets log&#8230;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$_SERVER</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$log</span><span class="sy0">.=</span> <span class="st0">&quot;trigger <span class="es4">$i</span>: &quot;</span><span class="sy0">.</span><span class="re0">$_SERVER</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\n</span>&quot;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//let&#8217;s do something&#8230;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$log</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$log</span> <span class="sy0">=</span> <span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>lastLog <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/date"><span class="kw3">date</span></a><span class="br0">&#40;</span><span class="st0">&quot;Y-m-d H:i:s&quot;</span><span class="br0">&#41;</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\n</span>Detected proxy server: &quot;</span><span class="sy0">.</span><a target="_blank" href="http://www.php.net/gethostbyaddr"><span class="kw3">gethostbyaddr</span></a><span class="br0">&#40;</span><span class="re0">$_SERVER</span><span class="br0">&#91;</span><span class="st_h">&#8216;REMOTE_ADDR&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">.</span><span class="st0">&quot; (<span class="es4">{$_SERVER['REMOTE_ADDR']}</span>)<span class="es1">\n</span>&quot;</span><span class="sy0">.</span><span class="re0">$log</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//mail message</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>getConfig<span class="br0">&#40;</span><span class="st_h">&#8216;MAIL_ALERT_TO&#8217;</span><span class="br0">&#41;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/mail"><span class="kw3">mail</span></a><span class="br0">&#40;</span><span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>getConfig<span class="br0">&#40;</span><span class="st_h">&#8216;MAIL_ALERT_TO&#8217;</span><span class="br0">&#41;</span><span class="sy0">,</span><span class="st0">&quot;Proxy detected at <span class="es4">{$_SERVER['REQUEST_URI']}</span>&quot;</span><span class="sy0">,</span><span class="re0">$log</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//write to file</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$f</span> <span class="sy0">=</span> <span class="re0">$this</span><span class="sy0">-&amp;</span>gt<span class="sy0">;</span>getConfig<span class="br0">&#40;</span><span class="st_h">&#8216;LOG_FILE&#8217;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$f</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><a target="_blank" href="http://www.php.net/is_writable"><span class="kw3">is_writable</span></a><span class="br0">&#40;</span><span class="re0">$f</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$fp</span> <span class="sy0">=</span> <a target="_blank" href="http://www.php.net/fopen"><span class="kw3">fopen</span></a><span class="br0">&#40;</span><span class="re0">$f</span><span class="sy0">,</span><span class="st_h">&#8216;a&#8217;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/fwrite"><span class="kw3">fwrite</span></a><span class="br0">&#40;</span><span class="re0">$fp</span><span class="sy0">,</span><span class="st0">&quot;<span class="es4">$log</span><span class="es1">\n</span>&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/fclose"><span class="kw3">fclose</span></a><span class="br0">&#40;</span><span class="re0">$fp</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span><span class="kw1">else</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1"><a target="_blank" href="http://www.php.net/die"><span class="kw3">die</span></a><span class="br0">&#40;</span><span class="st0">&quot;&amp;lt;strong&amp;gt;Fatal Error:&amp;lt;/strong&amp;gt; Couldn&#8217;t write to file: &#8216;&amp;lt;strong&amp;gt;<span class="es4">$f</span>&amp;lt;/strong&amp;gt;&#8217;&amp;lt;br&amp;gt;Please check if the path exists and is writable for the webserver or php&#8230;&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//done</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">return</span> <span class="kw4">true</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="co1">//nope, no proxy was logged&#8230;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">return</span> <span class="kw4">false</span><span class="sy0">;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">?<span class="sy0">&amp;</span>gt<span class="sy0">;</span></div>
</li>
</ol>
</div>
</div>
  ]]></content:encoded>
			<wfw:commentRss>http://www.w3code.net/php-proxy-detector-script-source/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Multiple random banners (images)</title>
		<link>http://www.w3code.net/multiple-random-banners-images/</link>
		<comments>http://www.w3code.net/multiple-random-banners-images/#comments</comments>
		<pubDate>Thu, 16 Apr 2009 14:32:31 +0000</pubDate>
		<dc:creator>Script</dc:creator>
				<category><![CDATA[Wordpress template]]></category>
		<category><![CDATA[Multiple random banners]]></category>
		<category><![CDATA[PHP code]]></category>
		<category><![CDATA[PHP script]]></category>
		<category><![CDATA[Rotation images]]></category>
		<category><![CDATA[Script code]]></category>
		<category><![CDATA[Source code]]></category>

		<guid isPermaLink="false">http://www.w3code.net/?p=614</guid>
		<description><![CDATA[This script will randomly pick three images from a directory of any mumber of .jpg files. No image will be duplicated Put all your .jpg images in a single directory. You will need to modify the first line of the script to specify this path. The script is written to show three random images. You [...]]]></description>
			<content:encoded><![CDATA[<p>This script will randomly pick three images from a directory of any mumber of .jpg files.   No image will be duplicated</p>
<p>Put all your .jpg images in a single directory.   You will need to modify the first line of the script to specify this path.   The script is written to show three random images.   You can<a href="http://www.w3code.net/creating-rotation-random-your-banner/"> easily modify the script</a> for what ever number you desire.</p>
<p>When you execute the script you will see the three random image file names shown in the browser window. This is verification that the script is working properly and the image files have been found. To show the images (not just the file names) you will need to replace the last line of this script (the scho) to use html image tags. Be sure to specify the correct path to the image file in the image tag. For example:</p>
<p style="padding-left: 30px;">echo &#8220;&lt;img src=&#8217;path_to_images/$image1&#8242; alt=&#8217;image&#8217; /&gt;&#8221;;</p>
<p>Remember to rename the file as a .php file.</p>
<p style="padding-left: 30px;">&lt;?php<br />
// set the path where the images reside on the server, include the trailing /<br />
$image_path = $_SERVER['DOCUMENT_ROOT'].&#8221;/<strong>directory</strong>/&#8221;;<br />
// load an array and strip path so you just have the image file names<br />
$image_array = str_replace($image_path,&#8221;,glob($image_path.&#8217;*.jpg&#8217;));<br />
// randomly select the first image<br />
$image1 = $image_array[array_rand($image_array)];<br />
// remove the first image from the array<br />
$image_array = array_merge(array_diff($image_array,(array)$image1));<br />
// randomly select the second image<br />
$image2 = $image_array[array_rand($image_array)];<br />
// remove the second image from the array<br />
$image_array = array_merge(array_diff($image_array,(array)$image2));<br />
// randomly select the third image<br />
$image3 = $image_array[array_rand($image_array)];<br />
// replace this line with your html image tags after testing<br />
echo &#8220;$image1&lt;br&gt;$image2&lt;br&gt;$image3&lt;br&gt;&#8221;;<br />
?&gt;</p>
  ]]></content:encoded>
			<wfw:commentRss>http://www.w3code.net/multiple-random-banners-images/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

