Welcome Guest, Not a member yet? Register   Sign In
Input Post Question
#1

[eluser]riwakawd[/eluser]
I am doing an a function where I can add permission to controllers.

but when I add $this->input->post('permission', 'access'); Need to no if OK to post like that my name="" on form is different sort of. Just not submitting data.

I am not to sure what to put for my model function. because of the double.

Controller Code

Code:
public function edit($user_group_id = 0) {

  $data['action'] = site_url('users/users_permission/edit/' . $user_group_id);
  
  $this->load->model('users/model_user_group');

  $user_group_info = $this->model_user_group->getUserGroup($user_group_id);

  if (!empty($this->input->post('name'))) {
   $data['name'] = $this->input->post('permission');
  } else {
   $data['name'] = $user_group_info['name'];
  }

  if (!empty($this->input->post('permission','access'))) {
   $data['access'] = $this->input->post('permission','access');
  } elseif (isset($user_group_info['permission']['access'])) {
   $data['access'] = $user_group_info['permission']['access'];
  } else {
   $data['access'] = array();
  }

  $ignore = array(
   'common/dashboard',
   'common/startup',
   'common/login',
   'common/register',
   'common/logout',
   'common/forgotten',
   'common/reset',
   'error/not_found',
   'error/permission',
   'common/footer',
   'common/header'
  );

  $data['permissions'] = array();

   $files = glob(APPPATH . 'controllers/*/*.php');

    foreach ($files as $file) {
       $part = explode('/', dirname($file));
       $permission = end($part) . '/' . basename($file, '.php');

       if (!in_array($permission, $ignore)) {
    $data['permissions'][] = $permission;
   }
    }

  //var_dump($files);

  $this->load->library('form_validation');

  $this->form_validation->set_rules('permission', 'Permission');

  if ($this->form_validation->run()) {

   redirect('users/users_permission');

  } else {
   $data['header'] = $this->load->view('template/common/header', $data, TRUE);
   $data['footer'] = $this->load->view('template/common/footer', NULL, TRUE);

   return $this->load->view('template/users/users_group_form', $data);

  }
  
}
}

Model Function
Code:
public function addPermission($user_group_id) {
  
  $this->db->where('user_group_id', $user_group_id);

  $data = array(
   'permission' => $this->input->post('permission'),
   'name' => $this->input->post('name')
  );

  $this->db->update('user_group', $data);
}

view
Code:
<?php echo form_open('users/users_permission/edit/'. $user_group_id, array('role' => 'form', 'class' => 'form-horizontal'));?>

<div class="form-group required">
<label class="col-sm-2 control-label" for="input-name">&lt;?php echo $entry_name; ?&gt;</label>
<div class="col-sm-10">
&lt;input type="text" name="name" value="&lt;?php echo $name; ?&gt;" placeholder="&lt;?php echo $entry_name; ?&gt;" id="input-name" class="form-control" /&gt;
</div>
</div>

<div class="form-group">
<label class="col-sm-2 control-label">&lt;?php echo $entry_access; ?&gt;</label>
<div class="col-sm-10">
<div class="well well-sm"  150px; overflow: auto;">
&lt;?php foreach ($permissions as $permission) { ?&gt;
<div class="checkbox">
<label>
&lt;?php if (in_array($permission, $access)) { ?&gt;
&lt;input type="checkbox" name="permission[access][]" value="&lt;?php echo $permission; ?&gt;" checked="checked" /&gt;
&lt;?php echo $permission; ?&gt;
&lt;?php } else { ?&gt;
&lt;input type="checkbox" name="permission[access][]" value="&lt;?php echo $permission; ?&gt;" /&gt;
&lt;?php echo $permission; ?&gt;
&lt;?php } ?&gt;
</label>
</div>
&lt;?php } ?&gt;
</div>
<a  >&lt;?php echo $text_select_all; ?&gt;</a> / <a  >&lt;?php echo $text_unselect_all; ?&gt;</a>
</div>
</div>

<div class="text-right">
<button type="submit" class="btn btn-primary"><i class="fa fa-save"></i> Save</button>
</div>
&lt;/form&gt;
#2

[eluser]CroNiX[/eluser]
See the userguide on input::post(). You're using the 2nd parameter incorrectly.




Theme © iAndrew 2016 - Forum software by © MyBB