How to Validate Select in CodeIgniter

Submitted by: 
Visitors have accessed this post 599 times.

Installing CodeIgniter

If you don't have CodeIgniter installed yet, you can use this link to download the latest version of CodeIgniter. Note: I'm using version 3.1.7 in this tutorial.

After downloading, extract the file in the folder of your server. Since I'm using XAMPP as my localhost server, I've put the folder in htdocs folder of my XAMPP.

Then, you can test whether you have successfully installed codeigniter by typing your app name in your browser. In my case, I named my app as ci_select so I'm using the below code.

  1. localhost/ci_select

codeigniter successful download

Removing index.php in our URLs

By default, index.php is included in every URL of our app. To remove this, please refer to my tutorial How to Remove Index.Php in the URL of Codeigniter Application.

Creating our Controller

Next step is to create our controller. This will be in charge of our app.

Create a file named Members.php in application/controllers folder of our app and put the ff codes.

  1. <?php
  2. defined('BASEPATH') OR exit('No direct script access allowed');
  4. class Members extends CI_Controller {
  5. public function __construct(){
  6. parent::__construct();
  7. $this->load->helper(array('url', 'form'));
  8. $this->load->library(array('session', 'form_validation'));
  9. }
  10. public function index(){
  11. $this->load->view('myform');
  12. }
  13. public function submit(){
  14. $this->form_validation->set_rules('member', 'Member', 'required');
  15. if ($this->form_validation->run() === TRUE){
  16. $this->session->set_flashdata('success', $this->input->post('member'));
  17. redirect('/');
  18. }
  19. else{
  20. $this->load->view('myform');
  21. }
  22. }
  24. }

Creating our Routes

Next, we are going to set up the default route of our application.

Open routes.php located in application/config folder and find $route['default_controller'] and update its value by the code below.

  1. $route['default_controller'] = 'members';

Creating our Views

Lastly, we create the views of our app. Take note that I've use Bootstrap in the views which is included in the downloadables of this tutorial. But if you want, you may download bootstrap using this link.

Create this file inside application/views folder.


  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>How to Validate Select in CodeIgniter</title>
  6. <link rel="stylesheet" type="text/css" href="<?php echo base_url(); ?>bootstrap/css/bootstrap.min.css">
  7. </head>
  8. <body>
  9. <div class="container">
  10. <h1 class="page-header text-center">Validate Select in CodeIgniter</h1>
  11. <div class="row">
  12. <div class="col-sm-4 col-sm-offset-4">
  13. <?php
  14. if(validation_errors()){
  15. echo "
  16. <div class='alert alert-danger'>
  17. <h4>Error!</h4>
  18. <p>".validation_errors()."</p>
  19. </div>
  20. ";
  22. }
  24. if($this->session->flashdata('success')){
  25. echo "
  26. <div class='alert alert-success'>
  27. <h4>Success!</h4>
  28. <p>You selected: ".$this->session->flashdata('success')."</p>
  29. </div>
  30. ";
  32. }
  33. ?>
  34. <form method="POST" action="<?php echo base_url(); ?>members/submit">
  35. <div class="form-group">
  36. <select class="form-control" name="member" id="member">
  37. <option value="" selected="selected">Select Member</option>
  38. <option value="Neovic" <?php echo set_select('member', 'Neovic'); ?>>Neovic</option>
  39. <option value="Gemalyn" <?php echo set_select('member', 'Gemalyn'); ?>>Gemalyn</option>
  40. <option value="Julyn" <?php echo set_select('member', 'Julyn'); ?>>Julyn</option>
  41. </select>
  42. </div>
  43. <button type="submit" class="btn btn-primary">Submit</button>
  44. </form>
  45. </div>
  46. </div>
  47. </div>
  48. </body>
  49. </html>

That ends this tutorial. Happy Coding :)

Add new comment

Filtered HTML

  • Web page addresses and e-mail addresses turn into links automatically.
  • You may insert videos with [video:URL]
  • Allowed HTML tags: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd> <table> <tr> <td> <th> <img> <h1> <h2> <h3> <iframe> [video]
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <asp>, <c>, <cpp>, <csharp>, <css>, <html4strict>, <java>, <javascript>, <mysql>, <php>, <python>, <sql>, <vb>, <vbnet>. The supported tag styles are: <foo>, [foo].
  • Lines and paragraphs break automatically.

Plain text

  • No HTML tags allowed.
  • Lines and paragraphs break automatically.
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.