Revision 227
Added by ryan almost 20 years ago
| view.php | ||
|---|---|---|
| 110 | 110 |
<?php |
| 111 | 111 |
|
| 112 | 112 |
// Get settings |
| 113 |
$query_settings = $database->query("SELECT header,field_loop,footer FROM ".TABLE_PREFIX."mod_form_settings WHERE section_id = '$section_id'");
|
|
| 113 |
$query_settings = $database->query("SELECT header,field_loop,footer,use_captcha FROM ".TABLE_PREFIX."mod_form_settings WHERE section_id = '$section_id'");
|
|
| 114 | 114 |
if($query_settings->numRows() > 0) {
|
| 115 | 115 |
$fetch_settings = $query_settings->fetchRow(); |
| 116 | 116 |
$header = str_replace('{WB_URL}',WB_URL,$fetch_settings['header']);
|
| 117 | 117 |
$field_loop = $fetch_settings['field_loop']; |
| 118 |
$footer = str_replace('{WB_URL}',WB_URL,$fetch_settings['footer']);
|
|
| 118 |
$footer = str_replace('{WB_URL}',WB_URL,$fetch_settings['footer']);
|
|
| 119 |
$use_captcha = $fetch_settings['use_captcha']; |
|
| 119 | 120 |
} else {
|
| 120 | 121 |
$header = ''; |
| 121 | 122 |
$field_loop = ''; |
| ... | ... | |
| 182 | 183 |
if (isset($tmp_field_loop)) $field_loop = $tmp_field_loop; |
| 183 | 184 |
} |
| 184 | 185 |
} |
| 186 |
|
|
| 187 |
// Captcha |
|
| 188 |
if($use_captcha) {
|
|
| 189 |
$_SESSION['captcha'] = ''; |
|
| 190 |
for($i = 0; $i < 5; $i++) {
|
|
| 191 |
$_SESSION['captcha'] .= rand(0,9); |
|
| 192 |
} |
|
| 193 |
?><tr><td class="field_title">Verification:</td><td> |
|
| 194 |
<table cellpadding="2" cellspacing="0" border="0"> |
|
| 195 |
<tr><td><img src="<?php echo WB_URL; ?>/include/captcha.php" alt="Captcha" /></td> |
|
| 196 |
<td><input type="text" name="captcha" maxlength="5" /></td> |
|
| 197 |
</tr></table> |
|
| 198 |
</td></tr> |
|
| 199 |
<?php |
|
| 200 |
} |
|
| 185 | 201 |
|
| 186 | 202 |
// Print footer |
| 187 | 203 |
echo $footer; |
| ... | ... | |
| 251 | 267 |
|
| 252 | 268 |
// Captcha |
| 253 | 269 |
if(extension_loaded('gd') AND function_exists('imageCreateFromJpeg')) { /* Make's sure GD library is installed */
|
| 254 |
if(isset($_POST['captcha']) AND $_POST['CAPTCHA']!=''){
|
|
| 255 |
// User-supplied captcha |
|
| 256 |
$user_captcha = $_POST['captcha']; |
|
| 257 |
// Computer generated |
|
| 258 |
if(isset($_SESSION['captcha'])) {
|
|
| 259 |
$system_captcha = $_SESSION['captcha']; |
|
| 260 |
} |
|
| 270 |
if(isset($_POST['captcha']) AND $_POST['captcha'] != ''){
|
|
| 261 | 271 |
// Check for a mismatch |
| 262 |
if($user_captcha != $system_captcha) {
|
|
| 272 |
if(!isset($_POST['captcha']) OR !isset($_SESSION['captcha']) OR !$_POST['captcha'] == $_SESSION['captcha']) {
|
|
| 263 | 273 |
$captcha_error = $MESSAGE['MOD_FORM']['INCORRECT_CAPTCHA']; |
| 264 |
} else {
|
|
| 265 |
unset($_SESSION['captcha']); |
|
| 266 | 274 |
} |
| 267 | 275 |
} else {
|
| 268 | 276 |
$captcha_error = $MESSAGE['MOD_FORM']['INCORRECT_CAPTCHA']; |
| 269 | 277 |
} |
| 270 | 278 |
} |
| 279 |
if(isset($_SESSION['catpcha'])) { unset($_SESSION['captcha']); }
|
|
| 271 | 280 |
|
| 272 | 281 |
// Addslashes to email body - proposed by Icheb in topic=1170.0 |
| 273 | 282 |
// $email_body = $wb->add_slashes($email_body); |
Also available in: Unified diff
Finished correct Captcha implementation in form mod