Здравствуйте. Долго копался на просторах интернета, вижу сам я уже эту проблему не решу. Капча отображается, но при вводе значения что на картинке выдает ошибку:
Цитата |
Неправильный код проверки. |
//капча
array('verifyCode', 'captcha','allowEmpty'=> !CCaptcha::checkRequirements(),'on' => 'registr' ),
$msg="Ajax None";
$model=new User('registr');
// Для аякс валидации
if(isset($_POST['ajax']) && $_POST['ajax']==='user-form')
{
$msg="Ajax сработал";
echo CActiveForm::validate($model);
Yii::app()->end();
}
<?php $form=$this->beginWidget('CActiveForm', array(
'id' => 'user-form',
'enableAjaxValidation' => true,
'enableClientValidation' => true,
'clientOptions' => array(
'validateOnSubmit' => true,
'validateOnChange' => true,
),
)); ?>
<script type="text/javascript" src="<?php Yii::app()->theme->getBaseUrl();?>/assets/5536bfed/jquery.yiiactiveform.js"></script>
<p class="note">Поля помеченные <span class="required">*</span> обязательны для заполнения.</p>
<div class="row3">
<?php echo $form->labelEx($model,'Почта*',array('class'=>'sear')); ?>
<?php echo $form->labelEx($model,'Логин*',array('class'=>'sear')); ?>
<?php echo $form->labelEx($model,'Пароль*',array('class'=>'sear')); ?>
<?php echo $form->labelEx($model,'Повторите пароль*',array('class'=>'sear','caption'=>'Повторите пароль')); ?>
</div>
<div class="row2">
<?php echo $form->textField($model,'email',array('size'=>45,'maxlength'=>45)); ?>
<?php echo $form->textField($model,'login',array('size'=>45,'maxlength'=>45)); ?>
<?php echo $form->passwordField($model,'password',array('size'=>45,'maxlength'=>45)); ?>
<?php echo $form->passwordField($model,'password_repeat',array('size'=>45,'maxlength'=>45)); ?>
</div>
<div class="row4">
<?php echo $form->error($model,'email'); ?>
<?php echo $form->error($model,'login'); ?>
<?php echo $form->error($model,'password'); ?>
<?php echo $form->error($model,'password_repeat'); ?>
</div>
<div class="row_but">
<?=CHtml::submitButton('Зарегистрироваться', array('id' => "submit")); ?>
</div>
<?php $this->endWidget(); ?>
<!--Капча начало-->
<?php if(CCaptcha::checkRequirements()): /*проверка загружена ли каптча*/ ?>
<div class="row6">
<?php echo $form->labelEx($model,'verifyCode'); /*вывод текстовой метки verifyCode*/?>
<div>
<?php $this->widget('CCaptcha',array('id'=>'capchas')); /*выводим саму каптчу*/?>
<?php echo $form->textField($model,'verifyCode'); /*выводим текстовое поле для ввода каптчи*/?>
</div>
<div class="hint">
Пожалуйста, введите буквы, как они показаны на рисунке выше
</div>
<?php
echo $form->error($model, 'verifyCode');
?>
</div>
<?php endif; ?>
<!--Капча конец-->