По договоренности
Техническое задание.
Создать сайт для прохождения тестирования.
Первая страница сайта анкета, которую должен заполнить посетитель для прохождения теста. Анкета имеет следующие поля: Имя, Фамилия, Дата рождения (с проверкой на правильность формата заполнения или выбор даты в календаре), номер телефона (с проверкой на правильность формата заполнения), e-mail (с проверкой на правильность формата заполнения). Сразу после анкеты нужно нажать галочку напротив текста: «Я подтверждаю свое согласие на обработку результатов». Далее защита от спама Я не робот. После заполнения анкеты нажимаем кнопку пройти тест. Если хотя бы одно из полей не заполнено, тест не открывается, а выводится сообщение: «не все поля анкеты заполнены».
Следующая страница открывается после нажатия на кнопку пройти тест. Эта страница содержит инструкции. После инструкций кнопка «я готов».
Организовать БД для хранения (записи новых и удаления старых) вопросов с вариантами ответов. Вопрос и ответ могут быть представлены как в форме текста, так и в форме картинки. В данный момент данные представляют собой таблицу excel «База вопросов к тестированию» и папку с картинками. БД содержит 1500 вопросов. Таблица excel имеет следующую структуру: № вопроса, тип записи (Question (вопрос), Correct (верный вариант ответа), Variant (неверный вариант ответа)), Text (содержание записи, если она имеется), Picture (название картинки с вопросом, если такая имеется), Level (уровень сложности вопроса. Находится по формуле «Уровень сложности = Количество неправильных ответов на вопрос / Общее количество ответов на это вопрос». После каждого прохождения теста должен пересчитываться и обновляться. На момент запуска сайта присвоить всем вопросам уровень сложность, равный нулю.) Подключить БД к сайту.
Картинки в папке названы следующим образом: q_1 (Вопрос 1), v_1_2 (2 вариант ответа на 1 вопрос), c_3 (верный вариант ответа на 3 вопрос).
В данный момент не все вопросы с картинками имеют картинку верного варианта ответа. Они будут добавляться еще примерно неделю.
После нажатия кнопки «пройти тестирование» формируется тест из 50 вопросов. Вопросы открываются по очереди, для ответа на каждый отведено 2 минуты. Вопросы выбираются случайным образом из БД, учитывая уровень сложности (рейтинг). 5 случайных вопросов с рейтингом от 0 до 0,1, 5 случайных вопросов с рейтингом от 0,1 до 0,2, 5 случайных вопросов с рейтингом от 0,2 до 0,3, 5 случайных вопросов с рейтингом от 0,3 до 0,4, и так далее до единицы. Итого 50 вопросов. Если вопросов с заданным рейтингом недостаточно в БД (меньше пяти), тогда берутся вопросы с рейтингом выше на 0,1. Если таких вопросов нет, то берутся вопросы с рейтингом ниже на 0.1. Если таких вопросов нет, то берутся вопросы из категории с рейтингом на 0.2 выше. Таким образом 0.5 0.6 0.4 0.7 0.3 0.8 0.2 0.9 0.1 1 0.
Во время прохождения тестирования наверху страницы отображается таймер (2 минуты на каждый вопрос). Для перехода к следующему вопросу нужно нажать кнопку «следующий». По истечении времени вопрос автоматически закрывается и открывается следующий. Чтобы завершить тестирование, требуется нажать кнопку «завершить тестирование», расположенную внизу после последнего вопроса. После нажатия кнопки отобразить надпись: «Тестирование завершено. Результаты сохранены.»
Организовать страницу для администратора сайта (вход через логин и пароль). На странице должны быть данные с результатами всех прохождений тестирования с указанием данных из анкеты.
Макет сайта есть в PDF файле «Макет сайта». Сайт должен выглядеть как в макете (естественно, без фоновых надписей Ninja Mock).
Вид будущей БД есть в excel файле «Как будет выглядеть БД» (5 таблиц). Администратор должен иметь возможность добавлять новые вопросы в БД, удалять или корректировать старые.
Сайт должен быть адаптивным (адекватно выглядеть на мониторах разных размеров).
Файлы могу отправить на почту, на так на fl.ru они превышают объем памяти.
Прошу сразу писать предложения по цене и срокам.
А также почту, на которую Вам можно отправить макет и таблицы.