Есть ли способ получить значение идентификатора PK таблицы вместо значения внешнего ключа после объединения? Codeigniter - PullRequest
1 голос
/ 15 марта 2020

Мне нужно получить значение PK.

Прямо сейчас проблема в том, что я получаю значение, это внешний ключ. Как я могу получить значение идентификатора PK?

Для визуального представления: посмотрите на мою проблему

Мой пользовательский интерфейс и проблема: enter image description here

так что все значения 1, которые являются значениями внешних ключей. Как я могу изменить его на 1, 2 et c. какое значение идентификатора PK?

Моя модель с запросом на присоединение

public function get_questions($id){
    $this->db->select('*');
    $this->db->from('answers');
    $this->db->join('questions', 'answers.question_id = questions.id');
    $this->db->where('questions.id', $id);
    $query = $this->db->get();
    return $result = $query->result_array();
}

Контроллер

   public function edit($id)
    {   
        $data['questions'] = $this->post_model->get_questions($id);

        $this->load->view('templates/header');
        $this->load->view('teachers/edit', $data);
        $this->load->view('templates/footer');   
    }

См. мою таблицу и идентификатор, который я должен получить:

enter image description here

Просмотр

<?php echo form_open('posts/update'); ?>

            <!-- <input type="hidden" name="id[]" value="<?php echo $posts['id']; ?>" /> -->
            Question:
            <input type="text" name="question" class="form-control" value="<?php echo $posts['question'];  ?>" /><hr>
            Answers:


            <?php foreach($questions as $question): ?>
                <input type="text" name="id[]" value="<?php echo $question['id']; ?>" /><hr>

                <input type="text" name="answer[]" class="form-control" value="<?php echo $question['answer']; ?>" /><hr>
            <?php endforeach; ?>

            <hr>

            <input type="submit" class="btn btn-success" value="Save Changes">
</form>

1 Ответ

0 голосов
/ 15 марта 2020

попробуйте использовать

$this->db->select('answers.id,answers.answer,answers.question_id,answers.correct,answers.type_id');
    $this->db->from('answers');
    $this->db->join('questions', 'answers.question_id = questions.id');
    $this->db->where('questions.id', $id);
    $query = $this->db->get();
    return $result = $query->result_array();

для достижения результатов согласно запросу

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