Yii Framework Forum: Captcha - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Captcha

#1 User is offline   delete10 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 30
  • Joined: 09-May 12

Posted 15 November 2012 - 03:11 AM

Arkadaşlar contach forumda captacha calısıyor. Ben bu Captchayı üyelerin bilgilerini güncelleme kısmına eklmeye calıstım. Ancak

<?php $this->widget('CCaptcha'); ?>


kısmında captcha görüntülenmiyor ekranda.

class Employees extends CActiveRecord

class ContactForm extends CFormModel


Bunlarla bi alakası var gibi geldi. Yardımlarınızı bekliyorum. Üyelerin bilgilerini Captcha eklemem gerekiyor. örnek bi uygulama verebilirmisiniz.Kendim Captcha yazmak istemiyorum. Sistemdeki varolan Captcha yı kullanmak istiyorum.
0

#2 User is offline   angelozi 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 6
  • Joined: 12-October 11
  • Location:Turkey

Posted 15 November 2012 - 03:33 AM

Controller classına aşağıdaki fonksiyon ekle
 public function actions() {
        return (isset($_POST['ajax']) && $_POST['ajax'] === 'registration-form') ? array() : array(
            'captcha' => array(
                'class' => 'CCaptchaAction',
                'backColor' => 0xFFFFFF,
            ),
                );
    }


view dosyana da yani form verilerinin olduğu bölümede aşağıdaki kodu ekle
<?php echo $form->labelEx($model, 'verifyCode'); ?>
<?php $this->widget('CCaptcha', 
          array('imageOptions' => 
                array('class' => 'captcha-img'), 
                      'buttonLabel'  => 'yenile',
                      'buttonType' => 'link',  // buttonda olabilir
                      'buttonOptions' => array(  'class' =>'captcha-renew', 'title' => 'Kodu yenile.')
               )); ?>
<?php echo $form->textField($model, 'verifyCode', array('class' => 'text captcha-text')); ?>
<?php echo $form->error($model, 'verifyCode'); ?>


girilen güvenlik kodunun kontrolü içinde model classındaki rules fonksiyonu için e aşağıdaki kodu eklemen lazım.

if (isset($_POST['ajax']) && $_POST['ajax']==='registration-form') 
 return $rules;
else 
 array_push($rules,array('verifyCode', 'captcha', 'allowEmpty'=> false));

return $rules;

0

#3 User is offline   delete10 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 30
  • Joined: 09-May 12

Posted 15 November 2012 - 04:09 AM

View Postangelozi, on 15 November 2012 - 03:33 AM, said:

Controller classına aşağıdaki fonksiyon ekle
 public function actions() {
        return (isset($_POST['ajax']) && $_POST['ajax'] === 'registration-form') ? array() : array(
            'captcha' => array(
                'class' => 'CCaptchaAction',
                'backColor' => 0xFFFFFF,
            ),
                );
    }


view dosyana da yani form verilerinin olduğu bölümede aşağıdaki kodu ekle
<?php echo $form->labelEx($model, 'verifyCode'); ?>
<?php $this->widget('CCaptcha', 
          array('imageOptions' => 
                array('class' => 'captcha-img'), 
                      'buttonLabel'  => 'yenile',
                      'buttonType' => 'link',  // buttonda olabilir
                      'buttonOptions' => array(  'class' =>'captcha-renew', 'title' => 'Kodu yenile.')
               )); ?>
<?php echo $form->textField($model, 'verifyCode', array('class' => 'text captcha-text')); ?>
<?php echo $form->error($model, 'verifyCode'); ?>


girilen güvenlik kodunun kontrolü içinde model classındaki rules fonksiyonu için e aşağıdaki kodu eklemen lazım.

if (isset($_POST['ajax']) && $_POST['ajax']==='registration-form') 
 return $rules;
else 
 array_push($rules,array('verifyCode', 'captcha', 'allowEmpty'=> false));

return $rules;




resim yine gelmiyor hocam aynısını yaptım
0

#4 User is offline   delete10 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 30
  • Joined: 09-May 12

Posted 15 November 2012 - 04:11 AM

yaptım. aşağıdaki kodu kaldırınca captcha kodu geldi

public function filters()
	{
		return array(
			'accessControl', // perform access control for CRUD operations
			'postOnly + delete', // we only allow deletion via POST request
		);
	}

0

#5 User is offline   delete10 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 30
  • Joined: 09-May 12

Posted 16 November 2012 - 03:39 AM

View Postdelete10, on 15 November 2012 - 04:11 AM, said:

yaptım. aşağıdaki kodu kaldırınca captcha kodu geldi

public function filters()
	{
		return array(
			'accessControl', // perform access control for CRUD operations
			'postOnly + delete', // we only allow deletion via POST request
		);
	}




yine sorun var.. bu filters kısmını kaldırırsam accses rules calısmıyor bükezde :D
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users