Как отобразить результаты для каждого вопроса на основе ответов - PullRequest
0 голосов
/ 03 апреля 2019

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

Например Q - Вы регулярно занимаетесь спортом?Если пользователь ответит «да» или «нет», он сохранит ответ и перейдет к следующему вопросу. В конце, когда пользователь нажмет кнопку «Отправить», он отобразит всю информацию, касающуюся вопросов, в зависимости от того, ответил пользователь «да» или «нет».

Я создал таблицу в phpmyadmin для вопросов и идентификатора вопроса. Нужна ли отдельная таблица для ответов?или мне лучше всего жестко задавать вопросы и просто хранить ответы?

Мой сайт работает на локальном хосте с использованием Apache. Моя база данных настроена на phpmyadmin с пользователями и т. Д. Большинство моих функций используют php.Из того, что я обнаружил в Интернете, большинство функций викторины используют javascript, и я не очень хорошо знаком с языком, поэтому открыт для любых предложений.

Я хотел бы иметь возможность хранить ответы в базе данных, когда пользовательлоги в информации есть для них.Любая помощь приветствуется, потому что мои навыки кодирования не удивительны.

Ниже приведен пример того, как я настроил atm, просто используя html, но не уверен, как добавить php или javascript и т. Д.

<div class="col-md-6">
            <form>
                <h4>Did they have any social media accounts</h4>
                <div class="help-tip">
                <p>Such as facebook, instagram, twitter, snapchat etc</p>
                </div>
                <div class="form-check">
                    <label>
                        <input type="radio" name="radio" checked> <span class="label-text">Yes</span>
                    </label>
                </div>
                <div class="form-check">
                    <label>
                        <input type="radio" name="radio"> <span class="label-text">No</span>
                    </label>
                </div>
            </form>
</div>

<div class="col-md-6">
            <form>
                <h4>Where they the main name on utility bills?</h4>
                <div class="help-tip">
                <p>Bills such as electricity, oil, telephonee, internet</p>
                </div>
                <div class="form-check">
                    <label>
                        <input type="radio" name="radio" checked> <span class="label-text">Yes</span>
                    </label>
                </div>
                <div class="form-check">
                    <label>
                        <input type="radio" name="radio"> <span class="label-text">No</span>
                    </label>
                </div>
            </form>
</div>

Ответы [ 2 ]

0 голосов
/ 03 апреля 2019

Я рекомендую вам сделать что-то подобное, создать таблицу пользователей, в которой будут храниться данные о пользователях (например, id, name, pass), если ваш проект будет публичным, хэшируйте пароли и защищайте своисайт против внедрения MySQL и межсайтовый скриптинг, если вы только учитесь, не беспокойтесь об этом.

После этого я бы создал другую базу данных для ответов, потому что вопросы будут такими же, что и всебудет структурировано что-то вроде:

id |вопрос |ответ |user_id

Идентификатор пользователя - это идентификатор пользователя, который ответил на вопрос, и это должен быть внешний ключ.

И после этого, когда пользователь заканчивает отвечать на вопрос или просто хочет увидетьВ результате вы просто получаете эту информацию об ответах в базе данных и отображаете информацию, основанную на этих ответах, с помощью PHP.

Если вам нужна помощь с использованием MySQL с PHP, взгляните на страницы mysqli и PDO в PHP..net это мне очень помогло:

https://www.php.net/manual/en/book.pdo.php https://www.php.net/manual/en/book.mysqli.php

0 голосов
/ 03 апреля 2019

В зависимости от ваших будущих планов и количества вопросов, вероятно, лучше хранить эти вопросы (возможно, также их возможные ответы?) В базе данных, поскольку это даст вам больше гибкости в будущем, чтобы изменить эти вопросы. В зависимости от того, все ли вопросы отвечают «да» или «нет», или возможны разные ответы, возможно, создайте другую таблицу, в которой будут отображаться возможные ответы на вопросы.
Поскольку на каждый вопрос могут отвечать несколько раз разные пользователи и т. Д., Вы должны создать другую таблицу для ответов на вопросы. В этом случае хранение одного ответа в одной строке звучит как лучшее решение с моей точки зрения (это может быть не так: D) , Он будет иметь answer_set_id, который будет связывать его вместе с одним answer_set (а также с пользователем, таблицей answer_set, который может иметь id, user_id и, возможно, время), это зависит от количества и типа данных, а также от того, что вы планируете делать с ним .

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