<?xml version="1.0" encoding="utf-8"?>
<!--If you can view this message, then you are viewing the
raw RSS (XML) source. This file is intended to be viewed with an
RSS reader or for syndication between websites. For more information,
try a web search for RSS.
Created by Siteframe http://siteframe.org.-->
<rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/">
  <channel>
    <title>PHP-CAPTCHA @ Siteframe</title>
    <link>http://siteframe.org/php-captcha</link>
    <description>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Title:&lt;/span&gt;&lt;/b&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt; &lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;Securing Web Forms with Simple PHP-CAPTCHA,&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&#13;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Required:&lt;/span&gt;&lt;/b&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt; &lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/span&gt;GD lib,&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&#13;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Enclosed:&lt;/span&gt;&lt;/b&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt; &lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/span&gt;source file,&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&#13;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;b style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Author: &lt;/span&gt;&lt;/b&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;G.Sujith Kumar.&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;CAPTCHA an acronym for &amp;ldquo;&lt;i style="mso-bidi-font-style: normal"&gt;completely automated public Turing test to tell computers and humans apart &lt;/i&gt;&amp;quot;. CAPTCHA technology enables you to discern human requests from computer generated requests on the Web, where such a distinction is difficult. Simply defined &amp;quot;Man can read machine can&amp;rsquo;t!&amp;rdquo;&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;In web available forms are always prone to attack by people who want to use your application for their own purposes. Many web sites use the CAPTCHA especially used to prevent bots from using various types of computing services.&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;The applications include preventing bots from taking part in online polls, registering for free email accounts, more recently, preventing bot-generated spam by requiring that the (unrecognized) sender pass a CAPTCHA test before the email message is delivered [implemented in Yahoo]. They have also been used to prevent people from using bots to assist with massive downloading of content from multimedia websites.&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;You have probably seen the CAPTCHA project in action at some of your Web destinations. Its principal tool is a randomly created image that contains a phrase unmentioned in computer-readable text on the rendered page. The form asks the user to provide the phrase. If the form post does not contain the correct phrase, you can safely assume either the human made a user error, or it wasn't a human at all.&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Now it's time to put this code to work. A simple and often-used interface to implement this new security measure is the form on website. In this form you typically capture random number.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;code&amp;gt;&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;form name=&amp;quot;form1&amp;quot; method=&amp;quot;post&amp;quot; action=&amp;quot;form.php&amp;quot; &amp;quot;&amp;gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;table width=&amp;quot;342&amp;quot; align=&amp;quot;center&amp;quot; cellspacing=&amp;quot;0&amp;quot; bgcolor=&amp;quot;#D4D0C8&amp;quot;&amp;gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;tr&amp;gt;&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;&amp;lt;img src=&amp;quot;php_captcha.php&amp;quot;&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt; Please enter the string shown in the image in the form.&amp;lt;br&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td align=&amp;quot;center&amp;quot;&amp;gt;&amp;lt;input name=&amp;quot;number&amp;quot; type=&amp;quot;text&amp;quot;&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;input name=&amp;quot;Submit&amp;quot; type=&amp;quot;submit&amp;quot;&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;value=&amp;quot;Submit&amp;quot;&amp;gt;&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&amp;lt;/form&amp;gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;/code&amp;gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;The following code use to create random numbers and this number are embedding with existing image file, the first line used to initiate session, which use to carry the user inputs.&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;code&amp;gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;?php&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;session_start();&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;$RandomStr = md5(microtime());&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;$ResultStr = substr($RandomStr,0,5);&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;$NewImage =imagecreatefromjpeg(&amp;quot;img.jpg&amp;quot;);&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;?&amp;gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;/code&amp;gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt"&gt;The second line [&lt;b style="mso-bidi-font-weight: normal"&gt;md5 (microtime ())&lt;/b&gt;] use to generate the random string, and the resultant string is trim by using third line [&lt;b style="mso-bidi-font-weight: normal"&gt;substr&lt;/b&gt;], which returns the portion of &lt;span style="FONT-FAMILY: Verdana"&gt;string&lt;/span&gt; specified by the &lt;span style="FONT-FAMILY: Verdana"&gt;start&lt;/span&gt; and &lt;span style="FONT-FAMILY: Verdana"&gt;length&lt;/span&gt; parameters.&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;The function &lt;b style="mso-bidi-font-weight: normal"&gt;imagecreatefromjpeg (&amp;quot;img.jpg&amp;quot;)&lt;/b&gt; is use to create a image by existing image file and as back ground ,so that you need to give an image file path.&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;code&amp;gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;?php&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;$LineColor = imagecolorallocate($NewImage,233,239,239);&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;$TextColor = imagecolorallocate($NewImage, 255, 255, 255);&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;imageline($NewImage,1,1,40,40,$LineColor);&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;imageline($NewImage,1,100,60,0,$LineColor);&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;imagestring($NewImage, 5, 20, 10, $ResultStr, $TextColor);&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;?&amp;gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;/code&amp;gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;After creation of back ground image, we generate some linear line, which is use to avoid the phrasing from random numbers, the respective lines are create by the function named &lt;b style="mso-bidi-font-weight: normal"&gt;imageline ()&lt;/b&gt; and &lt;b style="mso-bidi-font-weight: normal"&gt;imagestring () &lt;/b&gt;use to draw a random string horizontally.&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;code&amp;gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;?php&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;$_SESSION['key'] = $ResultStr;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;?&amp;gt;&#13;
&lt;p&gt;&amp;nbsp;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;/code&amp;gt;&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;The resultant random number [trimmed one], carry through session especially for validation purpose.&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;code&amp;gt;&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;?php&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;header(&amp;quot;Content-type: image/jpeg&amp;quot;);&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;imagejpeg($NewImage);&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;?&amp;gt;&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;/code&amp;gt;&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Finally above two functions are uses to display/out put the image to browser. So we can just call the particular file by through image source path, it will display the final image.&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;code&amp;gt;&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&amp;lt;?php&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;if(isset($_REQUEST['Submit'])){&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;$key=substr($_SESSION['key'],0,5);&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;$number = $_REQUEST['number'];&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;if($number!=$key){&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;echo ' Validation string not valid! Please try again!';}&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;else{&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;echo ' Your string is valid!';}&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/span&gt;}&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;?&amp;gt;&amp;lt;/code&amp;gt;&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;I hope you know about the above code functionality, it&amp;rsquo;s about validating the user in put and actual random number, depends upon the application you may use the &lt;b style="mso-bidi-font-weight: normal"&gt;if&lt;/b&gt; and &lt;b style="mso-bidi-font-weight: normal"&gt;else&lt;/b&gt; conditions, that&amp;rsquo;s all&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;Conclusion:&#13;
&lt;p&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: Verdana"&gt;CAPTCHA can be a great way to limit the amount of successful, unwanted HTTP POST requests in your application, CAPTCHAs are by definition fully automated, requiring little human maintenance or intervention in administering the test. This has obvious benefits in cost and reliability; I hope the simple code is useful to understand the concept. Happy CAPTCHA-ing!&#13;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;&#13;
&lt;/span&gt;&lt;/p&gt;</description>
    <language>en-US</language>
    <copyright>&amp;copy;2005-7 Glen Campbell</copyright>
    <lastBuildDate>Fri, 15 Sep 2006 16:49:29 PDT</lastBuildDate>
    <generator>Siteframe 5.0.6</generator>
    <webMaster>webmaster@siteframe.org</webMaster>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <ttl>30</ttl>
    <item>
      <title>Just can't find the file...</title>
      <description>On every page in Site Frame 3.2.2&amp;nbsp; there is a line that gives the date and &amp;quot;by&amp;quot;. I want to get rid of &amp;quot;by&amp;quot; but can't find the file to do so. I am very impressed with Site Frames light weight fast loading pages. If I am unclear you can see what I mean here&amp;nbsp;...</description>
      <pubDate>Fri, 15 Sep 2006 16:49:29 PDT</pubDate>
      <guid isPermaLink="true">http://siteframe.org/p/just-can-t-find-the-file-</guid>
      <link>http://siteframe.org/p/just-can-t-find-the-file-</link>
      <category>help</category>
    </item>
  </channel>
</rss>


<!-- rss.php/0.0704 secs -->
