CBaZ Posted September 30, 2007 Share Posted September 30, 2007 my security image does not include letters eventhough i believe its supposed to. <?php class passGen { var $size; var $password; // ------------------------------------------------ function passGen($size=0){ $this->size = $size; } // ------------------------------------------------ function password($return_letters=1, $return_numbers=1){ $letters = 'abcdefghijklmnopqrstuvwxyz'; $numbers = '0123456789'; $passString = ''; $option = $return_letters . $return_numbers; for($i = 0; $i < $this->size; $i++){ switch($option){ case '01': $c = $numbers[mt_rand(0, 9)]; break; case '10': $c = $letters[mt_rand(0, 25)]; break; case '11': $j = mt_rand(0, 1); $c = ($j == 0 ? $letters[mt_rand(0, 25)] : $numbers[mt_rand(0, 9)]); break; } $this->password[$i] = $c; $passString .= $c; } return md5($passString); } // ------------------------------------------------ function images($path, $extension, $preImage='', $width='', $height='', $css=''){ $images=''; for($i = 0; $i < $this->size; $i++){ $images .= '<img'; if($css != ''){ $images .= ' class="'. $css .'"'; } $images .= ' src="'. $path .'/'. $preImage . $this->password[$i] .'.'. $extension .'" width="'. $width .'" height="'. $height .'" alt="" border=0>'; } return $images; } // ------------------------------------------------ function verify($input, $hash){ if(md5($input) == $hash){ return true ; } else { return false; } } // ------------------------------------------------ } ?> 2nd part <?include('class.passgen.php'); $passGen = new passGen(5); $validate = 0; if(isset($_POST['submit'])){ $hash = $_POST['hash']; $pass = $_POST['pass']; if($passGen->verify($pass, $hash)){ $validate = 1; echo 'Validation OK'; } else { echo 'Validation not OK'; } echo '<br>'; } if($validate == 0){ $hash = $passGen->password(0, 1); echo '<br>'; echo $passGen->images('font', 'gif', 'f_', '16', '20'); echo '<br><br>'; echo'<p><label for="securitycode">Anti-Spam Security: (Required)</label><span style="color:#FF0000;">*</span><br>'; echo '<small>Type The Combination Shown In The Picture.</small><br>'; echo '<input type="hidden" value="'. $hash .'" name="hash">'; echo '<input type="text" value="'. $pass .'" name="pass" size="5" maxlength="5">'; echo '<br><br>'; } ?> Link to comment https://forums.phpfreaks.com/topic/71204-security-image-only-showing-numbers/ Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.