SpamBot ' lar hakkındaki sorunların artmasıyla birlikte görsel doğrulama alternatifleri sunmanın iyi olacağı kanısındayım bende..Dn_35 zaten bu konuda oldukça iyi bir döküman sunmuş sizlere..
Kayıt sırasında kişiye işlem sorup , cevabını almayı bekleyen ufak bir sistem aşağıda verilmiştir.. :
AÇ : profile_add_body.tpl
Herhangi bir <tr> </tr> dizinine benzeri şekilde ekliyoruz..
Kod: Tümünü seç
<tr>
<td class="row1"><span class="gen">2+3 = ? *</span></td>
<td class="row2">
<input type="text" class="post" style="width: 200px" name="math_question" size="6" maxlength="6" value="" />
</td>
</tr>
AÇ : includes/usercp_register.php
Kod: Tümünü seç
#####BUL: ####
else if ( $mode == 'register' )
{
if ( empty($username) || empty($new_password) || empty($password_confirm) || empty($email) )
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
}
}
#####ÖNCESİNE EKLE : ####
else if ( $mode == 'register' )
{
if ( empty($username) || empty($new_password) || empty($password_confirm) || empty($email) )
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
};
if (!isset($_POST['math_question']) || $_POST['math_question'] != '5') {
$error = TRUE;
$error_msg .= (isset($error_msg) ? '<br/>' : '') . "Güvenlik Sorusunu Doğru Cevaplandıramadınız";
}
}
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Görsel Açıdan bu sorunun Kayıt Bilgilerinin dışında aşağıdaki resim gibi görünmesini isteyenler aşağıdaki işlemleri gerçekleştirebilirler.
AÇ : includes/usercp_register.php
Kod: Tümünü seç
######BUL: ####
else if ( $mode == 'register' )
{
if ( empty($username) || empty($new_password) || empty($password_confirm) || empty($email) )
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
}
}
######İLE DEĞİŞTİR: ####
else if ( $mode == 'register' )
{
if ( empty($username) || empty($new_password) || empty($password_confirm) || empty($email) )
{
$error = TRUE;
$error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
};
if (!isset($_POST['math_question']) || $_POST['math_question'] != '5') {
$error = TRUE;
$error_msg .= (isset($error_msg) ? '<br/>' : '') . "Güvenlik Sorusunu Doğru Cevaplandıramadınız";
}
}
AÇ : profile_add_body.tpl
Kod: Tümünü seç
######BUL: ####
<tr>
<td class="row1"><span class="gen">2+3 = ? *</span></td>
<td class="row2">
<input type="text" class="post" style="width: 200px" name="math_question" size="6" maxlength="6" value="" />
</td>
</tr>
######ÖNCESİNE EKLE: ####
<tr>
<th class="thHead" colspan="2" height="25" valign="middle">Güvenlik Sorusu</th>
</tr>
[ resmi görüntülemek için tıklayın ]