2015-02-24 2 views
0

возможно, видео легко объяснит проблему. вот ссылка на мой video.Ошибки Bootstrap на codeigniter?

вот view код

<div class="col-sm-4"> 


<?php echo form_open('user/updateuser'); 
    ?> 



<legend>Update User</legend> 


<div class="form-group"> 
    <label for="id">ID</label> 
    <input name="id" type="text" class="form-control" id="id" placeholder="Input id" value="<?php echo $id; ?>" disabled> 
    <?php echo form_error('id'); ?>  
    </div> 

<div class="form-group"> 
    <label for="username">Username</label> 
    <input name="username" type="input" class="form-control" id="username" placeholder="Input Username" value="<?php echo $username;?>"> 
    <?php echo form_error('username'); ?> 
    </div> 

    <div class="form-group"> 
    <label for="password">Old Password:</label> 
    <input name="old_password" type="password" class="form-control" id="password" placeholder="Input Old Password"" value ="<?php set_value('old_password');?>"> 
    <?php echo form_error('old_password')?> 
    </div> 

    <div class="form-group"> 
    <label for="password">New Password:</label> 
    <input name="password" type="password" class="form-control" id="password" placeholder="Input Password" "> 
    <?php echo form_error('password')?> 
    </div> 


    <div class="form-group"> 
    <label for="password">New Password Confirmation:</label> 
    <input name="password_conf" type="password" class="form-control" id="password" placeholder="Input Password Confirmation"> 
    <?php echo form_error('password_conf')?> 
    </div> 

    <div class="form-group"> 
     <label for="email">Email address</label> 
     <input name="email" type="email" class="form-control" id="exampleInputEmail1" placeholder="Enter email" value="<?php echo $email; ?>"> 
     <?php echo form_error('email')?> 
    </div>  

    <div class="form-group" align="center"> 
    <button type="submit" class="btn btn-success">Submit</button> 

<button type="reset" class="btn btn-danger">Clear</button> 
     </div> 
</div> 
    <?php 
    echo form_close(); 
    ?> 

и вот контроллер user/updateuser

function index() 
{ 
    //This method will have the credentials validation  
    $this->form_validation->set_error_delimiters('<div class="alert alert-danger" role="alert">', '</div>'); 
    $this->form_validation->set_rules('username', 'Username', 'trim|required|xss_clean'); 
    $this->form_validation->set_rules('old_password', 'Old Password', 'trim|required|xss_clean|callback_check_password'); 
    $this->form_validation->set_rules('password', 'Password', 'trim|required|xss_clean|matches[password_conf]'); 
    $this->form_validation->set_rules('password_conf', 'Password Confirmation', 'trim|required|xss_clean'); 
    $this->form_validation->set_rules('email', 'Email', 'trim|required|xss_clean'); 

    if($this->isloggedin('logged_in')) 
    {       
     if($this->form_validation->run() == FALSE) 
     {      
      $data = array(
       'sess_username' => $this->isloggedin('logged_in'), 
       'id'   => $this->input->post('id'), 
       'username'  => $this->input->post('username'), 
       'email'   => $this->input->post('email') 

      );         

      $this->load->view('header'); 
      $this->load->view('main/menu_super_admin',$data); 
      $this->load->view('user/modifuser');     
      $this->load->view('footer'); 
     } 
     else 
     {   
      $query = $this->m_user->updateuser($this->input->post('id'),$this->input->post('username'),md5($this->input->post('password')),$this->input->post('email')); 

      if($query) 
      { 
       echo "<script>window.onload = function() { return alert(\" Update User Success ! \"); }</script>"; 
      } 
      else 
      { 
       return false; 
      } 

     redirect('user/user', 'refresh'); 
      } 
    } 
    else 
    { 
     redirect('login', 'refresh'); 
    } 
} 

проблема, я хочу, чтобы инвалиды ввода остаться инвалидом и значения остается тем же самым,

есть ли ошибки в моем коде?

ответ

1

входы для инвалидов не размещаются на сервере: http://www.w3.org/TR/html401/interact/forms.html#disabled

... [нетрудоспособный вход] не может принимать пользовательский ввод и не будет его значение будет передаваться с формой.

Я предлагаю получить идентификатор из сеанса и не полагаться на размещенную информацию каким-либо образом (это проблема безопасности, поскольку конечный пользователь может обрабатывать размещенную информацию). Вы уже проверяете, зарегистрирован ли пользователь. Просто введите идентификатор из сеанса, пока вы на нем.

Session ID может быть получен следующим образом:

$data = array(
    'sess_username' => $this->isloggedin('logged_in'), 
    'id'   => $this->session->userdata('session_id'), 
    'username'  => $this->input->post('username'), 
    'email'   => $this->input->post('email') 
); 

Вам также может понадобиться, чтобы загрузить библиотеку первого

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

Я также предлагаю использовать sess_use_databaseas mentioned in the docs для дополнительной безопасности сеанса.

Смежные вопросы