Как отобразить пользователя в текстовом поле, который создал другие данные пользователя? php codeigniter, я новичок ie надеюсь, кто-нибудь может помочь спасибо - PullRequest
0 голосов
/ 13 января 2020

У меня есть crud, который я хочу обновить, то есть я хочу повторить пользователя, который создал другую учетную запись пользователя. Это мой контроллер для добавления пользователя.

public function add()
{   
    $this->data['page_title'] = "Add User";

    $input_data = $this->input->post(); 

    if(!empty($input_data))
    {
        $this->User_model->insert($input_data);
        redirect('/users');
    } else {
        $this->load->view('templates/master', $this->data);
    }

}

Ниже представлена ​​моя модель для заполнения информации о пользователе.

<?php defined('BASEPATH') OR exit('No direct script access allowed');

class User_model extends CI_Model {

private $_table = "users";


public function get( $id = false )
{

    if ($id) {
        $this->db->where('id =', $id);
        $query = $this->db->get($this->_table);
        return $query->row_array();
    }

    $query = $this->db->get($this->_table);    
    return $query->result_array();
}

public function insert($data)
{ 
    $data['password'] = password_hash($data['password'],PASSWORD_DEFAULT);
    $this->db->insert($this->_table, $data);

}

public function update($data)
{
    $id = $data['id'];
    unset($data['id']);
    $data['password'] = password_hash($data['password'],PASSWORD_DEFAULT);
    $this->db->where('id =', $id);
    $this->db->update($this->_table, $data);
}

public function delete($id)
{
    $this->db->where('id', $id);
    $this->db->delete($this->_table);
}

public function login($username, $password){
    $query = $this->db->get_where('users', array('username'=>$username, $data['username'] = password_hash($data['password'],PASSWORD_DEFAULT))) ;

    return $query->row_array();
}

}

Это мое текстовое поле (созданное), которое я представляю хотите автоматически повторить пользователя, который создал данные.

<div class="col-sm-6">
      <label>Created By</label>
      <input type="text"required class="form-control form-control-user" name="created_by" placeholder="Created By"required>
      </div>

Ответы [ 2 ]

0 голосов
/ 16 января 2020

вам не нужно отображать имя пользователя на html, просто включите функцию вставки на модель;

, как это.

public function insert($data)
{ 
    $data['password'] = password_hash($data['password'],PASSWORD_DEFAULT);
    $data['created_by'] = $this->session->name;
    $this->db->insert($this->_table, $data);

}

Примечание: ваш целевая таблица, есть столбец «create_by»

0 голосов
/ 13 января 2020
<input type="text" class="form-control form-control-user" name="created_by" placeholder="Created By" value="<?php echo $fetch['created_by']; ?>" required>

Я предполагаю, что имя находится в БД в той же строке, что и данные, поэтому измените $fetch['created_by'] на любую переменную, которую вы используете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...