Строка цикла foreach Codeigniter для вставки в таблицу - PullRequest
0 голосов
/ 07 сентября 2018

У меня есть форма в переднем конце, я пытаюсь извлечь значение в скрытый элемент ввода и затем пытаюсь вставить в таблицу. Но это не работает, я получаю сообщение об ошибке неопределенной переменной user_id_ins Я извлекаю значение в скрытый элемент ввода из функции get_autocomplete.

Можете ли вы, ребята, помочь мне в достижении этого?

Контроллер

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

class AddMeeting extends CI_Controller {

    public function __construct(){
        parent::__construct();
        $this->load->library('form_validation');
        $this->load->helper('url');
        $this->load->helper('form');
        $this->load->database();
        $this->load->model('meetinginsert');
    }

    function index() {
        $this->form_validation->set_rules('organisationName', 'Organisation name', 'required');

        if ($this->form_validation->run() == FALSE) {
            $this->load->view('addmeeting');
        } else {

        $data = array(
            'organisation_name' => $this->input->post('organisationName'),
            'user_id' => $this->input->post('user_id')
        );

        $this->meetinginsert->meeting_insert($data);
        $data['message'] = 'Meeting added';
        $this->load->view('addmeeting', $data);
        }
    }

    function get_autocomplete() {
        if(isset($_GET['term'])) {
            $result = $this->meetinginsert->search_user($_GET['term']);
            if(count($result) > 0) {
                foreach($result as $row) {
                    $user_id_ins = $row->id;
                    $arr_result[] = $row->first_name . " " . $row->last_name;
                    echo json_encode($arr_result);
                }
            }
        }
    }
}
?>

View

<input type="hidden" name="user_id" value="<?php echo $user_id_ins; ?>">

1 Ответ

0 голосов
/ 08 сентября 2018

Предполагая, что это $arr_result, что вы вводите в представление, ошибка в том, что $user_id_ins не содержится в $arr_result и, следовательно, не передается в представление.

$arr_result, как вы это понимаете сейчас, - это только одномерный массив, в котором каждый элемент представляет собой просто объединение имени и фамилии. Вам нужно передать оба аргумента, такие как:

$arr_result[] = (user_id_ins => $user_id, fullname => $row->first_name . " " . $row->last_name);

Затем вы можете получить доступ к обоим полям в представлении, вызвав $user_id_ins и $fullname (или любое другое имя, которое вы хотите использовать)

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