Getting errors
$model->validate();$errores = $model->getErrors();p($errores);
Set Flash Message
$model->validate();$errores = $model->getErrors();p($errores); |
//ControllerYii::app()->user->setFlash("success", "Thanks for Vendor Regisration.!"); //View<?phpforeach (Yii::app()->user->getFlashes() as $key => $message) { echo '<div class="flash-' . $key . '">' . $message . "</div>\n";}?>
Form:
//ControllerYii::app()->user->setFlash("success", "Thanks for Vendor Regisration.!");//View<?phpforeach (Yii::app()->user->getFlashes() as $key => $message) { echo '<div class="flash-' . $key . '">' . $message . "</div>\n";}?> |
<?php $form = $this->beginWidget('CActiveForm', array( 'id' => 'create_message', 'enableAjaxValidation' => false, 'action' => CController::createUrl('messages/createmessage?id='.$id), 'enableClientValidation' => true, 'clientOptions' => array( 'validateOnSubmit' => true, // 'validateOnChange'=>true, // 'validateOnType'=>false, ), )); ?> <?php $this->endWidget(); ?>
Submit Button<?php $form = $this->beginWidget('CActiveForm', array( 'id' => 'create_message', 'enableAjaxValidation' => false, 'action' => CController::createUrl('messages/createmessage?id='.$id), 'enableClientValidation' => true, 'clientOptions' => array( 'validateOnSubmit' => true, // 'validateOnChange'=>true, // 'validateOnType'=>false, ), )); ?> <?php $this->endWidget(); ?> |
<?php echo CHtml::submitButton('Cancel'); ?>
Javascript function call from the begin widget after the validation of Yii
<?php echo CHtml::submitButton('Cancel'); ?> |
<?php $form = $this->beginWidget('CActiveForm', array( 'id' => 'venue-liquor-form', 'action' => 'addliquor?vid=' . $vid, 'enableAjaxValidation' => false, 'enableClientValidation' => true, 'clientOptions' => array( 'validateOnSubmit' => true, 'afterValidate' => 'js:checkErrors' ), 'stateful' => false, 'htmlOptions' => array('enctype' => 'multipart/form-data'), )); ?> <?php $this->endWidget(); ?> // javascript function function checkErrors(form, data, hasError) { if(hasError!=true){ } }
Ajax Call in Javascript
<?php $form = $this->beginWidget('CActiveForm', array( 'id' => 'venue-liquor-form', 'action' => 'addliquor?vid=' . $vid, 'enableAjaxValidation' => false, 'enableClientValidation' => true, 'clientOptions' => array( 'validateOnSubmit' => true, 'afterValidate' => 'js:checkErrors' ), 'stateful' => false, 'htmlOptions' => array('enctype' => 'multipart/form-data'), )); ?> <?php $this->endWidget(); ?> // javascript function function checkErrors(form, data, hasError) { if(hasError!=true){ } } |
$.ajax({ type: 'GET', url: '<?php echo CController::createUrl('messages/AjaxMessage'); ?>', asyc: false, data: {'c': c}, success: function(data) { if(data){ $('#v_more_div').before(data); $('#more_count').val(parseInt($('#more_count').val())+1); }else{ $('#v_more_div').remove(); } }, beforeSend: function() { jQuery('.inner_tab_contant').addClass('loading'); }, complete: function() { jQuery('.inner_tab_contant').removeClass('loading'); } });
Ajax call in view file (in PHP tag)$.ajax({ type: 'GET', url: '<?php echo CController::createUrl('messages/AjaxMessage'); ?>', asyc: false, data: {'c': c}, success: function(data) { if(data){ $('#v_more_div').before(data); $('#more_count').val(parseInt($('#more_count').val())+1); }else{ $('#v_more_div').remove(); } }, beforeSend: function() { jQuery('.inner_tab_contant').addClass('loading'); }, complete: function() { jQuery('.inner_tab_contant').removeClass('loading'); } }); |
<?php echo CHtml::ajaxlink('Show All', array('artist/statusactive'), array( "type" => "GET", "data" => array("type" => '-1', "vid" => $vid, 'value'=>'js:jQuery("#search_value").val()'), "success" => "function(data){ $(document).off('click.yiiGridView'); var value=jQuery('#search_value').val(); jQuery('.manage_floor').html(data); jQuery('#search_value').val(value); jQuery('#search_type').val('-1'); }", "beforeSend" => "function(){ jQuery('.manage_floor').addClass('loading'); }", "complete" => "function(){ jQuery('.manage_floor').removeClass('loading'); }", ), array('live' => false, 'class' => 'blue', 'id' => rand(0, 99999))); ?>
Radio Button in Ajax
<?php echo CHtml::ajaxlink('Show All', array('artist/statusactive'), array( "type" => "GET", "data" => array("type" => '-1', "vid" => $vid, 'value'=>'js:jQuery("#search_value").val()'), "success" => "function(data){ $(document).off('click.yiiGridView'); var value=jQuery('#search_value').val(); jQuery('.manage_floor').html(data); jQuery('#search_value').val(value); jQuery('#search_type').val('-1'); }", "beforeSend" => "function(){ jQuery('.manage_floor').addClass('loading'); }", "complete" => "function(){ jQuery('.manage_floor').removeClass('loading'); }", ), array('live' => false, 'class' => 'blue', 'id' => rand(0, 99999))); ?> |
<?php echo $form->radioButtonList($model, 'changed_by', array(0=>'Events',1=>'Time'), array('separator'=>'', 'labelOptions'=>array('style'=>'display:inline'), "async"=>false, 'onclick' =>CHtml::ajax(array("type"=>"GET", "url"=>array("floor/floorby"), "data"=>array('test'=>'js:this.value','vid'=>$vid,'id'=>$id), "update"=>"#changev", "complete"=>"function() { $('.datepick').datetimepicker({dateFormat: 'yy-mm-dd'});}" )))); ?>
Create Link using Yii Syntax
<?php echo $form->radioButtonList($model, 'changed_by', array(0=>'Events',1=>'Time'), array('separator'=>'', 'labelOptions'=>array('style'=>'display:inline'), "async"=>false, 'onclick' =>CHtml::ajax(array("type"=>"GET", "url"=>array("floor/floorby"), "data"=>array('test'=>'js:this.value','vid'=>$vid,'id'=>$id), "update"=>"#changev", "complete"=>"function() { $('.datepick').datetimepicker({dateFormat: 'yy-mm-dd'});}")))); ?> |
<?php echo CHtml::link("Delete","javascript:void(0)",array('class'=>'blue','onclick'=>'deletemessage('.$data["id"].')') ); ?> CHtml::link() method <?php echo CHtml::link('Link Text',array('controller/action')); ?> <?php echo CHtml::link('Link Text', array('controller/action', 'param1'=>'value1', 'param2'=>'value2', 'param3'=>'value3')); ?> <?php echo CHtml::link('Link Text', array('controller/action', 'param1'=>'value1'), array('target'=>'_blank'); ?> Different Module : <?php echo CHtml::link('Link Text',array('/module-id/controller/action')); ?> Same Module : <?php echo CHtml::link('Link Text',array('/{$this->module->id}/controller/action')); ?> Linking to <?php echo CHtml::link('Delete',"#", array("submit"=>array('delete', 'id'=>$data->ID), 'confirm' => 'Are you sure?')); ?>
Create URL<?php echo CHtml::link("Delete","javascript:void(0)",array('class'=>'blue','onclick'=>'deletemessage('.$data["id"].')') ); ?>CHtml::link() method<?php echo CHtml::link('Link Text',array('controller/action')); ?><?php echo CHtml::link('Link Text', array('controller/action', 'param1'=>'value1', 'param2'=>'value2', 'param3'=>'value3')); ?><?php echo CHtml::link('Link Text', array('controller/action', 'param1'=>'value1'), array('target'=>'_blank'); ?>Different Module :<?php echo CHtml::link('Link Text',array('/module-id/controller/action')); ?>Same Module :<?php echo CHtml::link('Link Text',array('/{$this->module->id}/controller/action')); ?>Linking to<?php echo CHtml::link('Delete',"#", array("submit"=>array('delete', 'id'=>$data->ID), 'confirm' => 'Are you sure?')); ?> |
<?php echo CController::createUrl('messages/createmessage?id='.$id); ?> <?php echo CController::createUrl('messages/createmessage',array('id'=>$id)); ?>
Grid update
<?php echo CController::createUrl('messages/createmessage?id='.$id); ?><?php echo CController::createUrl('messages/createmessage',array('id'=>$id)); ?> |
$.fn.yiiGridView.update("artist-grid");
Grid Status and Action(Insert/Delete)
$.fn.yiiGridView.update("artist-grid"); |
array( 'name' => 'Status', 'type' => 'raw', 'value' => 'CHtml::tag("div", array("style"=>"text-align: center;cursor:pointer" ,"onclick"=>"statuschange({$data["id"]})","class"=>"down-link","id" => "{$data["id"]}","href"=>"javascript:void(0);") , CHtml::tag("img", array( "src" => UtilityHtml::getStatusImage(GxHtml::valueEx($data, \'status\')))) )', 'htmlOptions' => array('width' => '50px') ), array( 'name' => 'Action', 'type' => 'raw', 'value' => ' CHtml::tag("div", array("style"=>"float: left; margin:5px; cursor:pointer" ,"onclick"=>"updateartist({$data["id"]})","id" => "{$data["id"]}","href"=>"javascript:void(0);") , CHtml::tag("img", array( "src" => "' . Yii::app()->request->baseUrl . '/images/update.png")) ). CHtml::tag("div", array("style"=>"float: left; margin:5px; cursor:pointer" ,"onclick"=>"deleteartist({$data["id"]})","id" => "{$data["id"]}","href"=>"javascript:void(0);") , CHtml::tag("img", array( "src" => "' . Yii::app()->request->baseUrl . '/images/delete.png")) )', ),
jQuery Validationarray( 'name' => 'Status', 'type' => 'raw', 'value' => 'CHtml::tag("div", array("style"=>"text-align: center;cursor:pointer" ,"onclick"=>"statuschange({$data["id"]})","class"=>"down-link","id" => "{$data["id"]}","href"=>"javascript:void(0);") , CHtml::tag("img", array( "src" => UtilityHtml::getStatusImage(GxHtml::valueEx($data, \'status\')))) )', 'htmlOptions' => array('width' => '50px')),array( 'name' => 'Action', 'type' => 'raw', 'value' => ' CHtml::tag("div", array("style"=>"float: left; margin:5px; cursor:pointer" ,"onclick"=>"updateartist({$data["id"]})","id" => "{$data["id"]}","href"=>"javascript:void(0);") , CHtml::tag("img", array( "src" => "' . Yii::app()->request->baseUrl . '/images/update.png")) ). CHtml::tag("div", array("style"=>"float: left; margin:5px; cursor:pointer" ,"onclick"=>"deleteartist({$data["id"]})","id" => "{$data["id"]}","href"=>"javascript:void(0);") , CHtml::tag("img", array( "src" => "' . Yii::app()->request->baseUrl . '/images/delete.png")) )',), |
<script type="text/javascript" vsrc="/redkey/js/jquery.validate.js"></script> <script> $(document).ready(function(){ $("#venue-set-price-change-from").validate( { rules: { "VenueManageEventfloor[rk_event_id]": "required", "VenueManageEventfloor[start_date_time]": "required", "VenueManageEventfloor[end_date_time]": "required" }, messages: { "VenueManageEventfloor[rk_event_id]": "Please Select Event name.", "VenueManageEventfloor[start_date_time]": "Please Select Event Start date.", "VenueManageEventfloor[end_date_time]": "Please Select Event date." } } ); }); </script> <?php echo $form->textField($model, 'change_price', array("class"=>"required number",'onkeypress' => 'return numbersonly(event)','value'=>$model->change_price)); ?>
Flash Message
<script type="text/javascript" vsrc="/redkey/js/jquery.validate.js"></script><script> $(document).ready(function(){ $("#venue-set-price-change-from").validate( { rules: { "VenueManageEventfloor[rk_event_id]": "required", "VenueManageEventfloor[start_date_time]": "required", "VenueManageEventfloor[end_date_time]": "required" }, messages: { "VenueManageEventfloor[rk_event_id]": "Please Select Event name.", "VenueManageEventfloor[start_date_time]": "Please Select Event Start date.", "VenueManageEventfloor[end_date_time]": "Please Select Event date." } } ); });</script><?php echo $form->textField($model, 'change_price', array("class"=>"required number",'onkeypress' => 'return numbersonly(event)','value'=>$model->change_price)); ?> |
$('#msg1').html('<div class=\"flash-success margin_r15\">Record save Successfully.</div>').fadeIn(); setTimeout( 'jQuery(\'#msg1\').fadeOut();',2000);
If Condition In Grid
$('#msg1').html('<div class=\"flash-success margin_r15\">Record save Successfully.</div>').fadeIn();setTimeout( 'jQuery(\'#msg1\').fadeOut();',2000); |
array( 'name' => 'Event Name', 'type' => 'raw', 'value' => '($data["event_name"]!="")?CHtml::link ($data["event_name"],array("//event/detail","id"=>$data["id"],"subeventid"=> $data["date_id"])):"No Event."', ),
CHtml::textField() Methodarray( 'name' => 'Event Name', 'type' => 'raw', 'value' => '($data["event_name"]!="")?CHtml::link ($data["event_name"],array("//event/detail","id"=>$data["id"],"subeventid"=> $data["date_id"])):"No Event."', ), |
<?php echo CHtml::textField('Text', 'some value', array('id'=>'idTextField', 'width'=>100, 'maxlength'=>100); ?>
List Data
<?php echo CHtml::textField('Text', 'some value', array('id'=>'idTextField', 'width'=>100, 'maxlength'=>100); ?> |
CHtml::listData() method <?php /*you can use here any find method you think proper to return your data from db*/ $models = categories::model()->findAll(); // format models resulting using listData $list = CHtml::listData($models, 'category_id', 'category_name'); print_r($list);?>
CHtml::dropDownList() Method
CHtml::listData() method<?php /*you can use here any find method you think proper to return your data from db*/ $models = categories::model()->findAll(); // format models resulting using listData $list = CHtml::listData($models, 'category_id', 'category_name'); print_r($list);?> |
<?php echo CHtml::dropDownList('listname', $select, array('M' => 'Male', 'F' => 'Female'), array('empty' => '(Select a gender)'));
Using Data From a Model Function<?php echo CHtml::dropDownList('listname', $select, array('M' => 'Male', 'F' => 'Female'), array('empty' => '(Select a gender)')); |
At model: public function getGenderOptions(){ return array('M' => 'Male', 'F' => 'Female'); } At view: <?php echo CHtml::dropDownList('listname', $select, $model->genderOptions, array('empty' => '(Select a gender')); Using data from db // retrieve the models from db $models = categories::model()->findAll( array('order' => 'category_name')); // format models as $key=>$value with listData $list = CHtml::listData($models, 'category_id', 'category_name'); <?php echo CHtml::dropDownList('categories', $category, $list, array('empty' => '(Select a category'));
Reading Record
At model:public function getGenderOptions(){ return array('M' => 'Male', 'F' => 'Female');}At view:<?php echo CHtml::dropDownList('listname', $select, $model->genderOptions, array('empty' => '(Select a gender'));Using data from db// retrieve the models from db$models = categories::model()->findAll( array('order' => 'category_name'));// format models as $key=>$value with listData$list = CHtml::listData($models, 'category_id', 'category_name');<?php echo CHtml::dropDownList('categories', $category, $list, array('empty' => '(Select a category')); |
// find the first row satisfying the specified condition $post=Post::model()->find($condition,$params); // find the row with the specified primary key $post=Post::model()->findByPk($postID,$condition,$params); // find the row with the specified attribute values $post=Post::model()->findByAttributes($attributes,$condition,$params); // find the first row using the specified SQL statement $post=Post::model()->findBySql($sql,$params); // find all rows satisfying the specified condition $posts=Post::model()->findAll($condition,$params); // find all rows with the specified primary keys $posts=Post::model()->findAllByPk($postIDs,$condition,$params); // find all rows with the specified attribute values $posts=Post::model()->findAllByAttributes($attributes,$condition,$params); // find all rows using the specified SQL statement $posts=Post::model()->findAllBySql($sql,$params); // get the number of rows satisfying the specified condition $n=Post::model()->count($condition,$params); // get the number of rows using the specified SQL statement $n=Post::model()->countBySql($sql,$params); // check if there is at least a row satisfying the specified condition $exists=Post::model()->exists($condition,$params);
Updating Record
// find the first row satisfying the specified condition $post=Post::model()->find($condition,$params);// find the row with the specified primary key $post=Post::model()->findByPk($postID,$condition,$params);// find the row with the specified attribute values $post=Post::model()->findByAttributes($attributes,$condition,$params);// find the first row using the specified SQL statement $post=Post::model()->findBySql($sql,$params);// find all rows satisfying the specified condition $posts=Post::model()->findAll($condition,$params);// find all rows with the specified primary keys $posts=Post::model()->findAllByPk($postIDs,$condition,$params);// find all rows with the specified attribute values $posts=Post::model()->findAllByAttributes($attributes,$condition,$params);// find all rows using the specified SQL statement $posts=Post::model()->findAllBySql($sql,$params);// get the number of rows satisfying the specified condition $n=Post::model()->count($condition,$params);// get the number of rows using the specified SQL statement $n=Post::model()->countBySql($sql,$params);// check if there is at least a row satisfying the specified condition $exists=Post::model()->exists($condition,$params); |
$post=Post::model()->findByPk(10); $post->title='new post title'; $post->save(); // save the change to database // update the rows matching the specified condition Post::model()->updateAll($attributes,$condition,$params); // update the rows matching the specified condition and primary key(s) Post::model()->updateByPk($pk,$attributes,$condition,$params); // update counter columns in the rows satisfying the specified conditions Post::model()->updateCounters($counters,$condition,$params);
Sql Query in Yii
$post=Post::model()->findByPk(10); $post->title='new post title'; $post->save(); // save the change to database// update the rows matching the specified condition Post::model()->updateAll($attributes,$condition,$params);// update the rows matching the specified condition and primary key(s) Post::model()->updateByPk($pk,$attributes,$condition,$params);// update counter columns in the rows satisfying the specified conditions Post::model()->updateCounters($counters,$condition,$params); |
$criteria = new CDbCriteria; $criteria->select = "t.*"; $criteria->join = ""; $criteria->condition = ""; $criteria->addCondition(""); $criteria->group = "t.id"; $criteria->order = "t.id"; $criteria->limit = "10"; $resultSet = VenueEvent::model()->findAll($criteria);
If condition in YII & MySql
$criteria = new CDbCriteria;$criteria->select = "t.*";$criteria->join = "";$criteria->condition = "";$criteria->addCondition("");$criteria->group = "t.id";$criteria->order = "t.id";$criteria->limit = "10";$resultSet = VenueEvent::model()->findAll($criteria); |
$criteria = new CDbCriteria;$criteria->select = "t.*,IF (t.rk_venue_id = ".$vid." and t.rk_venue_id= tu.venue_id and t.default_price_option='default',tu.table_price, t.other_price ) as price";$criteria->join = ",rk_venue_default_price as tu";$criteria->condition = "t.rk_venue_id = ".$vid;$criteria->addCondition("t.rk_venue_id= tu.venue_id");if(isset( $status) && $status != "-1"){ $criteria->addCondition('t.status="'.$status.'" ');}else{ $criteria->addCondition('t.status!="2"');}if(isset($keyword) && !empty ($keyword)){ $criteria->addCondition('t.table_number LIKE "%'.$keyword.'%" ');} |
