I recently done work related to Async automatic Remote validation of Form elements.
Pr-requisite: Download Jquery validation Plugin from http://jqueryvalidation.org/
Step 1: define form HTML
<div class="row" style="margin-top:10px">
<div class="col-md-3"><label>User Name:</label></div>
<div class="col-md-4"><input type="text" name="user_id" id="user_id"
class="form-control"
placeholder="User Id" required autofocus /></div>
</div>
Step 2:
define Form validation:
$("#form").validate({
rules: {
user_id: {
required:true,
minlength:5,
remote: {
url: 'ajax/dup_user_id_checker.php'
}
}
Step 3:
Define remote method which return "true" for success and "error messages" for failure.
source: ajax/dup_user_id_checker.php
public function dup_user_id_check()
{
$output=Array();
if(!isset($this->request->get['user_id']))
{
$output="Unable to check for duplicate user name";
}
else
{
$user_id=$this->request->get['user_id'];
$this->load->model('user/user');
if($this->model_user_user->IsUserExists($user_id))
{
$output="$user_id already taken.";
}
else
{
$this->log->write($user_id." found");
$output="true";
}
}
$this->data['json_output']=json_encode($output);
$this->template = 'common/json.tpl';
$this->children = array();
$this->response->setOutput($this->render(TRUE), $this->config->get('config_compression'));
}
Pr-requisite: Download Jquery validation Plugin from http://jqueryvalidation.org/
Step 1: define form HTML
<div class="row" style="margin-top:10px">
<div class="col-md-3"><label>User Name:</label></div>
<div class="col-md-4"><input type="text" name="user_id" id="user_id"
class="form-control"
placeholder="User Id" required autofocus /></div>
</div>
Step 2:
define Form validation:
$("#form").validate({
rules: {
user_id: {
required:true,
minlength:5,
remote: {
url: 'ajax/dup_user_id_checker.php'
}
}
Step 3:
Define remote method which return "true" for success and "error messages" for failure.
source: ajax/dup_user_id_checker.php
public function dup_user_id_check()
{
$output=Array();
if(!isset($this->request->get['user_id']))
{
$output="Unable to check for duplicate user name";
}
else
{
$user_id=$this->request->get['user_id'];
$this->load->model('user/user');
if($this->model_user_user->IsUserExists($user_id))
{
$output="$user_id already taken.";
}
else
{
$this->log->write($user_id." found");
$output="true";
}
}
$this->data['json_output']=json_encode($output);
$this->template = 'common/json.tpl';
$this->children = array();
$this->response->setOutput($this->render(TRUE), $this->config->get('config_compression'));
}
No comments:
Post a Comment