L oop пост массив для создания динамического - PullRequest
0 голосов
/ 09 марта 2020

Я хочу сделать этот код проще и чище, я делаю приложение для викторины, поэтому у меня есть 20 ответов. Теперь эта проблема в том, что если я хочу сделать 50 ответов. Я не хочу вводить 50 новых ответов.

Код работает хорошо, но проблема в том, что все они закодированы в stati c. Как я могу упростить это, чтобы стать более эффективным при добавлении вопросов? Я использовал радиокнопку в качестве входа. Это также главная проблема, потому что он не имеет динамический c. Могу я это сделать? пробовал раньше, но это не сработало так, как ожидалось *view page source

Вот мой переключатель, Нужно ли сделать этот массив? и как?

    <?php $i = 'A';
        foreach($ans_array AS $array_value): 
    ?>
    <?= $i; ?>.&nbsp; 

    <input type="radio" name="quizId<?= $question->id ?>" value="<?= $array_value ?>" required /> <?= $array_value ?> <br>

    <?php 
        $i++; 
        endforeach; 
    ?>

1 Ответ

1 голос
/ 09 марта 2020

Использование массива будет более эффективным. Вы можете сделать это следующим образом:

<input type="radio" name="quizId[<?= $question->id ?>]" value="<?= $array_value ?>" required /> <?= $array_value ?> <br />

Так что после post вы можете go по всему l oop и получить результаты своего поста, такие как:

foreach($this->input->post('quizId') as $val){
    //work with each value here
} 

Как я вижу Вы можете обновить контроллер следующим образом:

$this->data['checks'] = $this->input->post('quizId');

Вы отправили весь массив на view. Теперь в файле view необходимо указать значение ключа, подобное quizId . $key.

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