validasi client side

maaf gan subuh subuh udah minta bantuan :D

ane baru pertama kali megang Yii nih, ceritanya ane mo bikin validasi. setiap textfield yang blom di isi warnanya jadi merah.

ane dah coba pake ‘enableClientValidation’=>true, tapi ga mau jalan. ubek ubek google sama isi forum ini blom nemu solusi ny. :D

berikut coding untuk view nya


<div class="form">


<?php $form=$this->beginWidget('CActiveForm', array(

	'id'=>'contact-form',

	'enableClientValidation'=>true,

	'focus'=>array($model,'nama'),

)); ?>


	<p class="note">Fields with <span class="required">*</span> are required.</p>


	<?php echo $form->errorSummary($model); ?>


	<div class="row">

		<?php echo $form->labelEx($model,'nama'); ?>

		<?php echo $form->textField($model,'nama',array('size'=>60,'maxlength'=>100)); ?>

		<?php echo $form->error($model,'nama'); ?>

	</div>


	<div class="row">

		<?php echo $form->labelEx($model,'email'); ?>

		<?php echo $form->textField($model,'email',array('size'=>50,'maxlength'=>50)); ?>

		<?php echo $form->error($model,'email'); ?>

	</div>


	<div class="row">

		<?php echo $form->labelEx($model,'subjek'); ?>

		<?php echo $form->textField($model,'subjek',array('size'=>60,'maxlength'=>100)); ?>

		<?php echo $form->error($model,'subjek'); ?>

	</div>


	<div class="row">

		<?php echo $form->labelEx($model,'pesan'); ?>

		<?php echo $form->textArea($model,'pesan',array('rows'=>6, 'cols'=>50)); ?>

		<?php echo $form->error($model,'pesan'); ?>

	</div>


	<div class="row">

		<?php echo $form->labelEx($model,'tanggal'); ?>

		<?php echo $form->textField($model,'tanggal'); ?>

		<?php echo $form->error($model,'tanggal'); ?>

	</div>


	<div class="row buttons">

		<?php echo CHtml::submitButton($model->isNewRecord ? 'Create' : 'Save'); ?>

	</div>


<?php $this->endWidget(); ?>


</div><!-- form -->

mohon klo ada yang salah bisa dikasih tau ato klo bisa sih dikasih contoh nya :D

sebenernya klo validasi server-side nya udah bisa tinggal yang client side nya gagal mulu,

check your action which is processing it and uncomment something :)




....


public function actionCreate()

	{

		$model=new Contact;


		// Uncomment the following line if AJAX validation is needed

		//$this->performAjaxValidation($model);

		

		if(isset($_POST['Contact']))

		{

			$model->attributes=$_POST['Contact'];

			if($model->save())

				$this->redirect(array('view','id'=>$model->id));

		}


		$this->render('create',array(

			'model'=>$model,

		));

	}


....


protected function performAjaxValidation($model)

	{

		if(isset($_POST['ajax']) && $_POST['ajax']==='contact-form')

		{

			echo CActiveForm::validate($model);

			Yii::app()->end();

		}

	}



something wrong with that ?

bingung deh dah 2 hari kaga berhasil mulu

Mantap bos, hari libur gini masih kerja. :)

Setau ane kalau mau pake client ajax validation, baris yang ini harus di-uncomment (seperti keterangannya):




// Uncomment the following line if AJAX validation is needed

$this->performAjaxValidation($model);



maklum gan lagi penasaran berat sama yii

dah di uncomment tapi tetep server side, contohnya kaya klo pertama nginstall yii, kan dah ada web yang dah jadi

klo masuk ke halaman contact nah kita isi form, klo isinya bener kan textfield jadi ijo klo salah jadi merah.

nah klo yang saya, di submit dulu baru klo salah halamannya balik lagi plus ditandain mana yang salah.

selain uncomment code yang tadi ada syntax tambahannya ga gan ?

mohon bantuan nya :D

Maaf gan, sepertinya ane salah mengerti; posting ane sebelumnya menjelaskan ajax validation. Kalo mo pake client validation, kode yang tadi tetap di-comment. :P

BTW, bisa tolong di-posting kode validation rule agan yang ada di model? Ane barusan coba client validation, tapi lancar2 aja.




public function rules()

{

	return array(

		array('nama, email, subjek, pesan, tanggal', 'required'),

		array('nama, subjek', 'length', 'max'=>100),

		array('email', 'email'),

		array('verifyCode', 'captcha', 'allowEmpty'=>!CCaptcha::checkRequirements()),

	);

}



??? apa template ngaruh ? form.css dah ane include, apa ada yang kurang ya

ternyata oh ternyata aku terpukul gan karena hal sepele validasi client side jadi ga jalan :(

ane hapus ini dari view/layouts/main.php semua jadi berjalan normal.


<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>

plong dah akhirnya validasi udah beres. btw makasih gan udah mau bantuin lumayan tambah ilmu dan penasaran sama yii. moga moga project beres dalam hitungan hari lagi