Welcome Guest, Not a member yet? Register   Sign In
CodeIgniter helpful hints
#12

[eluser]xwero[/eluser]
some hints :

- When you have to use an input value multiple times put it in a variable it saves typing and you only have to make one call to the input->post method.

- Put form validation and other form related actions in a separate library. It keeps your controller cleaner and you see patterns sooner
Code:
// controller
$this->load->library('formactions');
function index()
{
   if(array_key_exists('addbutton',$_POST))
   {
      list($msg,$redirect) = $this->formactions->add();
   }
   if(array_key_exists('updatebutton',$_POST))
   {
      list($msg,$redirect) = $this->formactions->update();
   }
   if(array_key_exists('deletebutton',$_POST))
   {
      list($msg,$redirect) = $this->formactions->delete();
   }
   if($redirect != '')
   {
       redirect($redirect);
   }
   else
   {
       $data['msg'] = $msg;
   }
   $this->load->view('someview',$data);
}
// library
class Formactions
{
   var $ci;
  
   function Formactions()
   {
      $this->ci =& get_instance();
   }
  
   function add()
   {
      $msg = '';
      $redirect = '';
      // validation
      if(!$this->ci->validation->run())
      {
         $msg = $this->ci->validation->errror_string;
      }
      else
      {
         // do something else (for example database action, manipulate image, write to file, ...)
         // redirect if needed
         $redirect = 'controller/success';
      }
      return array($msg,$redirect);
   }
}


Messages In This Thread
CodeIgniter helpful hints - by El Forum - 02-07-2008, 08:03 PM
CodeIgniter helpful hints - by El Forum - 02-07-2008, 10:57 PM
CodeIgniter helpful hints - by El Forum - 02-07-2008, 11:30 PM
CodeIgniter helpful hints - by El Forum - 02-08-2008, 12:32 AM
CodeIgniter helpful hints - by El Forum - 02-08-2008, 06:24 AM
CodeIgniter helpful hints - by El Forum - 02-08-2008, 07:17 AM
CodeIgniter helpful hints - by El Forum - 02-08-2008, 07:37 AM
CodeIgniter helpful hints - by El Forum - 02-08-2008, 10:36 PM
CodeIgniter helpful hints - by El Forum - 02-08-2008, 10:52 PM
CodeIgniter helpful hints - by El Forum - 02-09-2008, 12:14 AM
CodeIgniter helpful hints - by El Forum - 02-09-2008, 01:57 AM
CodeIgniter helpful hints - by El Forum - 02-12-2008, 02:25 AM
CodeIgniter helpful hints - by El Forum - 02-12-2008, 03:01 AM
CodeIgniter helpful hints - by El Forum - 02-12-2008, 11:29 AM
CodeIgniter helpful hints - by El Forum - 02-12-2008, 04:30 PM
CodeIgniter helpful hints - by El Forum - 02-12-2008, 08:53 PM
CodeIgniter helpful hints - by El Forum - 02-14-2008, 03:41 AM
CodeIgniter helpful hints - by El Forum - 02-14-2008, 06:46 AM
CodeIgniter helpful hints - by El Forum - 02-14-2008, 07:47 AM
CodeIgniter helpful hints - by El Forum - 02-14-2008, 09:52 AM
CodeIgniter helpful hints - by El Forum - 02-19-2008, 08:47 AM
CodeIgniter helpful hints - by El Forum - 02-19-2008, 09:38 AM
CodeIgniter helpful hints - by El Forum - 02-19-2008, 09:41 AM
CodeIgniter helpful hints - by El Forum - 02-19-2008, 06:43 PM
CodeIgniter helpful hints - by El Forum - 02-19-2008, 10:15 PM
CodeIgniter helpful hints - by El Forum - 02-20-2008, 01:35 AM
CodeIgniter helpful hints - by El Forum - 02-20-2008, 02:06 AM
CodeIgniter helpful hints - by El Forum - 02-20-2008, 03:00 AM
CodeIgniter helpful hints - by El Forum - 02-26-2008, 08:13 AM
CodeIgniter helpful hints - by El Forum - 03-06-2008, 04:38 AM
CodeIgniter helpful hints - by El Forum - 03-06-2008, 08:32 AM
CodeIgniter helpful hints - by El Forum - 04-03-2008, 10:19 AM
CodeIgniter helpful hints - by El Forum - 04-04-2008, 10:07 PM
CodeIgniter helpful hints - by El Forum - 04-11-2008, 03:13 AM
CodeIgniter helpful hints - by El Forum - 04-18-2008, 06:35 AM
CodeIgniter helpful hints - by El Forum - 04-28-2008, 10:34 PM
CodeIgniter helpful hints - by El Forum - 05-14-2008, 01:23 AM
CodeIgniter helpful hints - by El Forum - 05-15-2008, 05:48 AM
CodeIgniter helpful hints - by El Forum - 06-18-2008, 02:40 AM
CodeIgniter helpful hints - by El Forum - 07-09-2008, 05:03 AM
CodeIgniter helpful hints - by El Forum - 07-09-2008, 05:05 AM
CodeIgniter helpful hints - by El Forum - 07-30-2008, 04:45 AM



Theme © iAndrew 2016 - Forum software by © MyBB