- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как удалить плохие SEO-ссылки и очистить ссылочную массу сайта
Применяем отклонение ссылок
Сервис Rookee
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Вроде просто, но прошу помощи.
Пишу скрипт тестов. И там есть такая штука.
Так вот. За такие вопросы нужно начислять 1 балл в случае, если человек отметил флажки1, 3, 4 и 0 баллов в любом другом случае.
Как такое лучше реализовать?
На данном этапе подсчет баллов ведется так:
Но очевидно, в таком случае у меня за подобный вопрос на выходе 3 балла (сумма чекбоксов). А нужно, чтобы был 1.
Так вы сами же суммируете: $itog = $itog + $current_value;
Так вы сами же суммируете: $itog = $itog + $current_value;
Нет смотрите. там какая штука.
В одном тесте комбинированные вопросы.
Т.е. есть где радио кнопки.
<label>Вопрос 1</label>
<input class="tas" name="'.$key.'" type="radio" value="3">
<input class="tas" name="'.$key.'" type="checkbox" value="5">
<input class="tas" name="'.$key.'" type="radio" value="15">
Есть где чекбоксы
<label>Вопрос 2</label>
<input class="tas" name="'.$key.'" type="checkbox" value="1">
<input class="tas" name="'.$key.'" type="checkbox" value="5">
<input class="tas" name="'.$key.'" type="checkbox" value="8">
А есть это вопрос
<label>Вопрос3</label>
<input class="tas" name="'.$key.'" type="checkbox" value="1">
<input class="tas" name="'.$key.'" type="checkbox" value="0">
<input class="tas" name="'.$key.'" type="checkbox" value="1">
<input class="tas" name="'.$key.'" type="checkbox" value="1">
<input class="tas" name="'.$key.'" type="checkbox" value="0">
Переменная итог $itog = это сумма набранных за каждый вопрос баллов. Т.е. за вопрос 1 человек может получить максимум 15, за вопрос 2. от 1 до 14 (1+5+8) баллов тк может отметить сраз все чекбоксы и тест это позволяет. , а за вопрос три он должен получать либо 1, либо 0.
Вот как это блин расшаривать я не придумал еще....
PS сам массив отмеченных чекбоксов и радио у меня передается через аякс var data = $(this).serializeArray();
и храниться тут $_REQUEST['data'];
Перменная $key = равна номеру вопроса.
Т.е.
<label>Вопрос 1</label>
<input class="tas" name="1" type="radio" value="3">
<input class="tas" name="1" type="checkbox" value="5">
<input class="tas" name="1" type="radio" value="15">
Ну так вам нужно для для таких вопросов отдельное имя заводить name="key2"
Скрипт же мысли читать не умеет.
Я-бы все делал через двоичную сс
как пример
ректальненько, но по-крайней мере работает
Ну так вам нужно для для таких вопросов отдельное имя заводить name="key2"
Скрипт же мысли читать не умеет.
Примерно начинаю понимать ход ваших мыслей.
А вот вопрос.
name="key2" или name="key2[]" лучше?
просто вопрос такого типа в тесте может быть произвольное число.
до конца один фиг не придумал, как все же делать проверку по самому вопросу.
Т.е. проверить, что заполнены именно эти 3 чекбоска, а не какие-то другие....
можете чуть более развернуто совет дать?
Ну придумайте как в группу такие вопросы то собрать. И оттуда уже надо исходить.
Просто у вас будет два подсчёта, один общий, а другой для другой группы вопросов. И там уже будет другая логика подсчёта. Кстати НЕ выделенные чекбоксы вообще не передаются.
А вот с 0 у вас могут быть проблемы при проверки. Поэтому для этой группы я рекомендую сделать 1 и 2 в value, чтобы можно было проверить выделен нужный ли или нет.
система такая берете
Name
называете его вроде name = "field[fieldType][fieldId]"
далее прогоняете через умную функцию, разделяющую обработчики в зависимости от fieldType
Профит
Понял. Спасибо! И еще вопрос в догонку. По схожей теме.
А тесты типа "Больше ответов А" Или больше ответов "С"
Где фиксированное число вариантов ответов.
Их лучше как сделать?
<label>Вопрос 1</label>
<input class="tas" name="a[]'" type="checkbox" value="A">
<input class="tas" name="b[]'" type="checkbox" value="B">
<input class="tas" name="c[]" type="checkbox" value="C">
<label>Вопрос 2</label>
<input class="tas" name="a[]'" type="checkbox" value="A">
<input class="tas" name="b[]'" type="checkbox" value="B">
<input class="tas" name="c[]" type="checkbox" value="C">
и потом a[], b[] и с[] загнать в count, чтобы узнать в каком массиве больше ответов. Или есть другой вариант, более разумный?
Особенно учитывая, что все через .serializeArray() сперва проходит
может так