Yii Framework Forum: Yii Validation Error (Yii_1.1.12) - Yii Framework Forum

Jump to content

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

Yii Validation Error (Yii_1.1.12) Rate Topic: ***-- 2 Votes

#1 User is offline   deepu thomas 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 1
  • Joined: 05-October 12

Posted 20 December 2012 - 06:18 AM

i am using yii 1.1.12 , one of my registration form not showing error , validation all are working fine , BUT THE ONLY PROBLEM IS THAT <?php echo $form->error($model,'field_name); ?> generating error message WITH A STYLE DISPLAY:NONE (), SO THAT ITS NOT VISIBLE , like following. any help greatly appreciable.

<div class="errorMessage" style="display: none;">Name cannot be blank.</div>
model :

Hi, <?php echo $form->labelEx($model,'name'); ?> genating a hidden div which will be empty while loading page , after submitting the page , if there is error the innerhtml of the error div changing to error message , but the css style is not changing , so that the error message is not visible to the user. do you have any idea on the same

<?php

/**
* This is the model class for table "users".
*
* The followings are the available columns in table 'users':
* @property integer $id
* @property string $user_name
* @property string $password
* @property string $email
* @property string $premium_expiry_date
* @property integer $active
*/
class Users extends CActiveRecord
{
/**
* Returns the static model of the specified AR class.
* @param string $className active record class name.
* @return Users the static model class
*/
public $name;
public $date;
public $month;
public $year;
public $gender;
public $religion;
public $caste;
public $mobile;


public static function model($className=__CLASS__)
{
return parent::model($className);
}

/**
* @return string the associated database table name
*/
public function tableName()
{
return 'users';
}

/**
* @return array validation rules for model attributes.
*/
public function rules()
{
// NOTE: you should only define rules for those attributes that
// will receive user inputs.
return array(
array('user_name, password, email, premium_expiry_date, active', 'required','on'=>array('registration')),
array(', password, email, premium_expiry_date, active', 'required','on'=>array('registration')),
array('active', 'numerical', 'integerOnly'=>true),
array('user_name, email', 'length', 'max'=>50),
array('password', 'length', 'max'=>100),
// The following rule is used by search().
// Please remove those attributes that should not be searched.
array('name, date, month, year, gender, religion, caste, mobile, email, password', 'required','on'=>array('reg_home')),
array('email', 'unique'),
array('date', 'length', 'max'=>2,'on'=>array('reg_home')),
array('email', 'email'),
array('email', 'length', 'max'=>50,'on'=>array('reg_home')),
array('name', 'length', 'max'=>30,'on'=>array('reg_home')),
array('month', 'length', 'max'=>20,'on'=>array('reg_home')),
array('year', 'length', 'max'=>4,'on'=>array('reg_home')),
array('gender', 'length', 'max'=>6,'on'=>array('reg_home')),
array('religion', 'length', 'max'=>4,'on'=>array('reg_home')),
array('id, user_name, password, email, premium_expiry_date, name, date, month, year, gender, religion, caste, mobile, active', 'safe', 'on'=>'search'),
);
}

/**
* @return array relational rules.
*/
public function relations()
{
// NOTE: you may need to adjust the relation name and the related
// class name for the relations automatically generated below.
return array(
);
}

/**
* @return array customized attribute labels (name=>label)
*/
public function attributeLabels()
{
return array(
'id' => 'ID',
'user_name' => 'User Name',
'password' => 'Login Password',
'email' => 'Email',
'premium_expiry_date' => 'Premium Expiry Date',
'active' => 'Active',
);
}

/**
* Retrieves a list of models based on the current search/filter conditions.
* @return CActiveDataProvider the data provider that can return the models based on the search/filter conditions.
*/
public function search()
{
// Warning: Please modify the following code to remove attributes that
// should not be searched.

$criteria=new CDbCriteria;

$criteria->compare('id',$this->id);
$criteria->compare('user_name',$this->user_name,true);
$criteria->compare('password',$this->password,true);
$criteria->compare('email',$this->email,true);
$criteria->compare('premium_expiry_date',$this->premium_expiry_date,true);
$criteria->compare('active',$this->active);

return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
));
}
}


controller action:

public function actionIndex()
{

$model=new Users('reg_home');
if(isset($_POST['Users']))
{

$model->attributes=$_POST['Users'];
$model->validate();
// print_r($model->getErrors());
if($model->save())
{
/* echo 'done';
exit;*/
}
else
{
/*print_r($model->getErrors()); exit;
echo '!!!!!!!!!!!';
exit;*/
}
////print_r($model->validators); exit;
//print_r($model->attributes);
}
//$model->validate();
// $ww=new Users
$pages_model=new Pages;
$welcome_content=$pages_model->find('page_heading=:page_heading',array(':page_heading'=>'Home'));
$welcome_content=$welcome_content['page_content']; //echo $welcome_content;exit;
$db_cretiria=new CDbCriteria(array('condition'=>'success_couple=:success_couple','params'=>array(':success_couple'=>1),'order'=>'id DESC','limit'=>2));
//print_r(count($db_cretiria)); exit;
$gallery_modle=new Gallery;
$success_couple=$gallery_modle->findAll($db_cretiria);
foreach($success_couple as $val)
{
$success_couple_array[$val['id']]=$val['image_new_name'];
}

$religion_model=new Religion;
$religion=$religion_model->findAll();
foreach($religion as $val)
{
$religion_array[$val['id']]=$val['religion'];
}
$this->layout='matrimony';
//print_r($model->getErrors()); exit;
$this->render('index',array('welcome_content'=>$welcome_content,'success_couple_array'=>$success_couple_array,'model'=>$model,'religion_array'=>$religion_array));

}

view:


<script type="text/javascript" src="<?php echo Yii::app()->getBaseUrl(true); ?>/js/common_front.js"></script>
<section id="gallery">
<div class="gal-slide">
<div class="slider-wrapper theme-default">
<div id="slider" class="nivoSlider">
<img src="<?php echo Yii::app()->getBaseUrl(true); ?>/images/slide-1.png" width="562" height="350" alt="slide">
<img src="<?php echo Yii::app()->getBaseUrl(true); ?>/images/slide-2.png" width="562" height="350" alt="slide">
</div>
</div>
</div>
<div class="gal-form">
<div id="tabs">
<ul>
<li><a href="#tab-1">Register</a></li>
<li><a href="#tab-2">Search</a></li>
</ul>

<div id="tab-1">
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'reg-form-reg-form',
'enableAjaxValidation'=>false,

));
// print_r($model->getErrors());
// print_r($form->error($model,'name'));exit;
//echo $form->errorSummary($model); exit;
?>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><?php echo $form->labelEx($model,'name'); ?>
</td>
<td width="10">&nbsp;</td>
<td>
<?php echo $form->textField($model,'name'); ?>
<?php echo $form->error($model,'name'); ?>
</td>
</tr>
<tr>
<td>Date Of Birth *</td>
<td>&nbsp;</td>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="84">
<?php for($i=1;$i<=31;$i++){$date[$i]=$i;} ?>
<?php echo $form->dropDownList($model,'date',$date); ?>
<?php echo $form->error($model,'date'); ?>

</td>
<td width="84">

<?php
$month=array('January'=>'January','February'=>'February','March'=>'March','April'=>'April','May'=>'May','June'=>'June','July'=>'July','August'=>'August','September'=>'September','October'=>'October','November'=>'November','December'=>'December');
echo $form->dropDownList($model,'month',$month); ?>
<?php echo $form->error($model,'month'); ?></td>
<td> <?php
$last_year=date('Y')-18;
$last_year_last=$last_year-85;
$year_range=range($last_year,$last_year_last);
foreach($year_range as $val) // atleast 18 age
{
$year_val[$val]=$val;
}
echo $form->dropDownList($model,'year',$year_val);
echo $form->error($model,'year'); ?></td>
</tr>
</table>
</td>
</tr>
<tr>
<td>Gender *</td>
<td>&nbsp;</td>
<td><label>
<input type="radio" name="Users[gender]" id="male" value="male">
Male
<input type="radio" name="Users[gender]" id="male2" value="female">
Female
</label></td>
</tr>
<tr>
<td><?php echo $form->labelEx($model,'religion'); ?>
</td>
<td>&nbsp;</td>
<td><?php echo $form->dropDownList($model,'religion',$religion_array,array('class'=>'selet', 'onClick'=>"javascript:list_caste(this);")); ?>
<?php echo $form->error($model,'religion'); ?></td>
</tr>
<tr>
<td><?php echo $form->labelEx($model,'caste'); ?></td>
<td>&nbsp;</td>
<td><?php echo $form->dropDownList($model,'caste',array(''=>'select religion'),array('class'=>'selet',)); ?>
<?php echo $form->error($model,'caste'); ?>
</select></td>
</tr>
<tr>
<td><?php echo $form->labelEx($model,'mobile'); ?></td>
<td>&nbsp;</td>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><select name="date6" id="date6"><option value="+91">+91</option>
</select></td>
<td><?php echo $form->textField($model,'mobile',array('class'=>'mobile')); ?>
<?php echo $form->error($model,'mobile'); ?></td>
</tr>
</table></td>
</tr>
<tr>
<td><?php echo $form->labelEx($model,'email'); ?></td>
<td>&nbsp;</td>
<td><?php echo $form->textField($model,'email'); ?>
<?php echo $form->error($model,'email'); ?></td>
</tr>
<tr>
<td><?php echo $form->labelEx($model,'password'); ?></td>
<td>&nbsp;</td>
<td><?php echo $form->passwordField($model,'password'); ?></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><label>
<?php echo CHtml::submitButton('Register Free',array('class'=>'subt')); ?>

</label></td>
</tr>
</table>
<?php $this->endWidget(); ?>

</div>

<div id="tab-2">
<form action="search.php" method="get">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Looking For</td>
<td width="10">&nbsp;</td>
<td>
<select class="selet" name="listbox" id="listbox">
<option>Bride</option>
<option>Groom</option>
</select>
</td>
</tr>
<tr>
<td>Age</td>
<td>&nbsp;</td>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="112"><select name="listbox2" id="listbox2">
<option>select</option>
<option>18</option>
</select></td>
<td width="57">To</td>
<td><select name="listbox3" id="listbox3">
<option>Select</option>
<option>22</option>
</select></td>
</tr>
</table></td>
</tr>
<tr>
<td>Height(CM)</td>
<td>&nbsp;</td>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="112"><select name="listbox4" id="listbox4">
<option>select</option>
<option>18</option>
</select></td>
<td width="57">To</td>
<td><select name="listbox4" id="listbox5">
<option>Select</option>
<option>22</option>
</select></td>
</tr>
</table></td>
</tr>
<tr>
<td>With Photo</td>
<td>&nbsp;</td>
<td><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><label>
<input type="checkbox" name="tick" id="tick" />
</label></td>
<td><label>
<input class="subt" type="submit" name="button" id="button" value="Search" />
</label></td>
</tr>
</table></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>Member id</td>
<td>&nbsp;</td>
<td><label>
<input type="text" name="textfield" id="textfield" />
</label></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><input class="subt" type="submit" name="button2" id="button2" value="Search" /></td>
</tr>
</table>

</form>
</div>
</div>
</div>
</section>
<section id="content">
<div class="left">
<div class="text">
<?php echo $welcome_content; ?>
</div>

<div class="premia">
<h2>Premium Display</h2>
<ul>
<li>
<img src="<?php echo Yii::app()->getBaseUrl(true); ?>/images/pre.png" width="130" height="79" alt="groum">
<span> <span class="name">Sasi </span><span class="yer">25yrs</span></span><span class="id">Profile ID : MI-230001 </span>
</li>
<li><img src="<?php echo Yii::app()->getBaseUrl(true); ?>/images/pre.png" width="130" height="79" alt="groum"><span> <span class="name">Sasi </span><span class="yer">25yrs</span></span>
<span class="id">Profile ID : MI-230001 </span></li>
<li><img src="<?php echo Yii::app()->getBaseUrl(true); ?>/images/pre.png" width="130" height="79" alt="groum"><span> <span class="name">Sasi </span><span class="yer">25yrs</span></span>
<span class="id">Profile ID : MI-230001 </span></li>
<li><img src="<?php echo Yii::app()->getBaseUrl(true); ?>/images/pre.png" width="130" height="79" alt="groum"><span> <span class="name">Sasi </span><span class="yer">25yrs</span></span>
<span class="id">Profile ID : MI-230001 </span></li>
<div class="clear"></div>
</ul>
</div>
</div>
<div class="right">
<div class="sucouple">
<h3>Success Couples</h3>
<ul>
<?php
$base= Yii::app()->getBaseUrl(true);
//print_r($success_couple_array);
foreach($success_couple_array as $val)
{

echo "<li><img src=\"$base/gallery/thumb/$val\" width=\"199\" height=\"124\" alt=\"couples\"></li>";
}
?>


</ul>
</div>
</div>
<div class="clear"></div>
</section>
0

#2 User is offline   ORey 

  • Elite Member
  • PipPipPipPipPip
  • Yii
  • Group: Members
  • Posts: 1,640
  • Joined: 20-April 09
  • Location:Moscow, Russia

Posted 20 December 2012 - 01:09 PM

Seems like this is how CActiveForm::error() works. It is used for ajax validation.
I've always disliked activeform, so no idea how to turn this off.
God is real unless declared as integer
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