Welcome Guest, Not a member yet? Register   Sign In
Setting a default value for a form with form validation library
#1

[eluser]steven2[/eluser]
Is there a way to set a default value when a form is first loaded with the Form Validation library?

Here it the function page in my controller, I load the validation library in my constructor.

Code:
function join()
    {
                
    
    //echo "Got here";
        //echo "Two by two";
        
        
        $this->validation->set_error_delimiters('<div class="error_message">', '</div>');
        
        //$rules['username']    = "required";
        //$rules['password']    = "required";
        //$rules['passconf']    = "required";
        $rules['email']        = "trim|required|valid_email|xss_clean|callback_email_check";


        
        $this->validation->set_rules($rules);

        
        $fields['email']    = 'Email Address';
        $this->validation->set_fields($fields);
        
            
        if ($this->validation->email == "")
            $this->validation->email = "tester default";
        
        
        if ($this->validation->run() == FALSE)
        {
            $this->load->view('welcome/join.php');
        }
        else
        {
            $this->load->view('welcome/joinsuccess.php');
        }
    }

and here is the relevant part of the view

Code:
echo form_open('welcome/join', $attributes);
?&gt;

<label>Email</label>
&lt;input type="text" name="email" value="&lt;?php echo $this-&gt;validation->email;?&gt;" id="email" maxlength="75" size="50" style="width:65%"  />
&lt;?php echo $this->validation->email_error; ?&gt;

This seems to work correctly setting the default value to 'tester default', but since it wasn't mentioned in the user guide I wonder if there is an easier way to do it, or if this is a bad idea.

I found this page http://www.sellersrank.com/codeigniter/u...rm-values/ which seems to describe how to do add to the existing validation class, but I would strongly prefer not to go that route.
#2

[eluser]TheFuzzy0ne[/eluser]
Yes, see set_value() in the [url="http://ellislab.com/codeigniter/user-guide/helpers/form_helper.html"]form helper[/url].




Theme © iAndrew 2016 - Forum software by © MyBB