<?php
session_start();
$captcha = array('math', 'string');
// Captcha instructions (if any) Later would be displayed accordingly to the captcha displayed
$captcha_inst = array('math' => '',
'string' => 'Do not include spaces. All lower case.');
// The type of captcha we are doing (the key to the $captcha array
$type = rand(0, (count($captcha) - 1));
// The file path of the random captcha
$file_path = "./captcha/{$captcha[$type]}.php";
?>
<body>
<head>
<title>String Captcha</title>
<style type="text/css">
.captchaLink
{
width: 16px;
height: 16px;
border: none;
cursor: pointer;
}
.captchaLink:hover
{
color: #ff0000;
}
.inline
{
float: left;
}
</style>
</head>
<body>
<div class="inline">
<img src="<?=$file_path;?>" alt="captcha" />
</div>
<div class="inline">
<a onclick="document.getElementById('demo').play()" class="captchaLink" >▷</a><br />
<a onclick="document.getElementById('demo').pause()" class="captchaLink" >⌷⌷</a>
</div>
<div style="clear: both;"></div>
<audio id="demo">
<source src="./audio/<?=$captcha[$type];?>_audio.php?aud=<?php echo time(); ?>" type="audio/mpeg" />
Your browser does not support the audio element.
</audio>
<!-- Displaying the instructions to the captcha (if any) accordingly to the captcha displayed //-->
<p><?=$captcha_inst[$captcha[$type]];?></p>
<form action="display_random.php" method="POST">
<input type="text" name="captcha" /><br />
<input type="submit" name="submit" value="Submit" />
<input type="reset" value="Reset" />
</form>
</body>
</html>
<?php
if(isset($_POST['submit']))
{
// Checking the session captcha vs the submitted captcha
if($_SESSION['captcha'] == $_POST['captcha'])
{ // It was a match
echo 'Correct!';
}
else
{ // It was NOT a match
echo 'Incorrect, correct answer was ' . $_SESSION['captcha'];
}
}
?>
|