Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (3) [1] 2 3  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Простенький тест на РНР
zgd  
 ۩  [x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 14
Пользователь №: 41810
На форуме: 1 год, 6 месяцев, 13 дней
Карма:




Пытаюсь сделать простенький тест, пока получается такой код:
Вывод теста:

<form action="result1.php" method="POST">
<
div>
<
p>В честь какого маршала была названа порода лошадей</p>
<
label><input name="q1" value="a" type="radio">С.М. Будённого</label>
<
label><input name="q1" value="b" type="radio">Г.К. Жукова</label>
<
label><input name="q1" value="c" type="radio">К.Е. Ворошилова</label>
<
label><input name="q1" value="d" type="radio">М.Н. Тухачевского</label>
</
div>
<
div>
<
p>По мотивам какого произведения Чехого снят фильм Н. Михалкова «Очи чёрные»</p>
<
label><input name="q2" value="a" type="radio">«Каштанка»</label>
<
label><input name="q2" value="b" type="radio">«Дама с собачкой»</label>
<
label><input name="q2" value="c" type="radio">«Вишнёвый сад»</label>
<
label><input name="q2" value="d" type="radio">«Крыжовник»</label>
</
div>
<
div>
<
p>В старину «кухнями ведьм» называли</p>
<
label><input name="q3" value="a" type="radio">Парфюмерные магазины</label>
<
label><input name="q3" value="b" type="radio">Ателье</label>
<
label><input name="q3" value="c" type="radio">Аптеки</label>
<
label><input name="q3" value="d" type="radio">Банки</label>
</
div>
<
div>
<
p>Кто поёт хвостом?</p>
<
label><input name="q4" value="a" type="radio">Жаворонок</label>
<
label><input name="q4" value="b" type="radio">Глухарь</label>
<
label><input name="q4" value="c" type="radio">Цапля</label>
<
label><input name="q4" value="d" type="radio">Бекас</label>
</
div>
<
br><br>
<
button type="submit">Результат</button>
</
form>


Обработка и вывод результатов:


<?php
$ot = 0;
$not = 0;
if ($_POST[q1] == a){$ot++;} else {$not++;}
if ($_POST[q2] == b){$ot++;} else {$not++;}
if ($_POST[q3] == c){$ot++;} else {$not++;}
if ($_POST[q4] == d){$ot++;} else {$not++;}
?>

<div>
<
p>В честь какого маршала была названа порода лошадей</p>
<
label><span style="background-color:#81F79F"><input name="q1" value="a" type="radio" disabled="disabled">С.М. Будённого<label></span>
<
label><input name="q1" value="b" type="radio" disabled="disabled">Г.К. Жукова</label>
<
label><input name="q1" value="c" type="radio" disabled="disabled">К.Е. Ворошилова</label>
<
label><input name="q1" value="d" type="radio" disabled="disabled">М.Н. Тухачевского</label>
</
div>
<
div>
<
p>По мотивам какого произведения Чехого снят фильм Н. Михалкова «Очи чёрные»</p>
<
label><input name="q2" value="a" type="radio" disabled="disabled">«Каштанка»</label>
<
label><span style="background-color:#81F79F"><input name="q2" value="b" type="radio" disabled="disabled">«Дама с собачкой»</label></span>
<
label><input name="q2" value="c" type="radio" disabled="disabled">«Вишнёвый сад»</label>
<
label><input name="q2" value="d" type="radio" disabled="disabled">«Крыжовник»</label>
</
div>
<
div>
<
p>В старину «кухнями ведьм» называли</p>
<
label><input name="q3" value="a" type="radio" disabled="disabled">Парфюмерные магазины</label>
<
label><input name="q3" value="b" type="radio" disabled="disabled">Ателье</label>
<
label><span style="background-color:#81F79F"><input name="q3" value="c" type="radio" disabled="disabled">Аптеки</label></span>
<
label><input name="q3" value="d" type="radio" disabled="disabled">Банки</label>
</
div>
<
div>
<
p>Кто поёт хвостом?</p>
<
label><input name="q4" value="a" type="radio" disabled="disabled">Жаворонок</label>
<
label><input name="q4" value="b" type="radio" disabled="disabled">Глухарь</label>
<
label><input name="q4" value="c" type="radio" disabled="disabled">Цапля</label>
<
label><span style="background-color:#81F79F"><input name="q4" value="d" type="radio" disabled="disabled">Бекас</label></span>
</
div>

<
p>Правильных ответов: <?php echo $ot; ?></p>
<
p>Неправильных ответов: <?php echo $not; ?></p>


То есть вручную указал span для правильных ответов. Можно ли сделать так, что бы при выводе результатов если ответ неправильный, то он помещался бы в красный span, если правильный, то span не меняется и остаётся зелёным?
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 5592
Пользователь №: 35718
На форуме: 4 года, 4 месяца, 4 дня
Карма: 170




Цитата (zgd @ 31.10.2015 - 12:45)
То есть вручную указал span для правильных ответов.

вручную не надо этого делать

Цитата (zgd @ 31.10.2015 - 12:45)
Можно ли сделать так, что бы при выводе результатов

можно, но для этого надо перестать работать руками и начинать работать головой

вопросы, ответы (в том числе и правильные) должны храниться в како-то месте (например в БД), а контент который пользователь увидит у себя на экране должен генерироваться из этих данных в соотвествии с некторорыми условиями (в том числе и каким цветом выделять тот или иной фрагмент)


--------------------
wmr - R281553014107
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
zgd  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Новичок
*

Профиль
Группа: Пользователь
Сообщений: 14
Пользователь №: 41810
На форуме: 1 год, 6 месяцев, 13 дней
Карма:




Так и вопрос то в том, что бы сделать это без БД на статичных страницах.
PMПисьмо на e-mail пользователюСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 15226
Пользователь №: 4190
На форуме: 9 лет, 1 месяц, 17 дней
Карма: 457




Цитата (zgd @ 31.10.2015 - 18:49)
Так и вопрос то в том, что бы сделать это без БД на статичных страницах.

А в чем профит такого "программирования"? В то время, как всё прогрессивное человечество весь мир стремится к динамическим страницам, ты хочешь создавать сайт, как 20 лет назад???
Да еще задаешь этот вопрос на форуме программистов smile.gif Которые привычны к БД и другим современным технологиям.


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Kusss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1445
Пользователь №: 28976
На форуме: 5 лет, 7 месяцев, 24 дня
Карма: 83




zgd
сделай код универсальней, и будет проще.

1) массив: вопрос , варианты , ответ
2) функция для создания html вопросов
3) <name="q1" , переделать в name="q[1]"
4) перебором массива $_POST['q'], с помощью ключа находишь ответ в массиве и сравниваешь с значением.
PMПисьмо на e-mail пользователю
    1   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
AllesKlar  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 3471
Пользователь №: 38635
На форуме: 3 года, 2 месяца, 26 дней
Карма: 184




zgd
Слушай Kusss, у остальных "горе от ума".
Дополню советом:
сделай отдельную функцию, которая тебе будет возвращать массив с вопросами и ответами на тест.
Когда научишься работать с базой, то просто перепишешь всего лишь эту одну функцию, весь остальной код трогать не придется.


--------------------
[продано копирайтерам]
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 5592
Пользователь №: 35718
На форуме: 4 года, 4 месяца, 4 дня
Карма: 170




Цитата (AllesKlar @ 31.10.2015 - 21:39)
у остальных "горе от ума"

не надо лЯ лЯ

Цитата (AllesKlar @ 31.10.2015 - 21:39)
функцию, которая тебе будет возвращать массив с вопросами и ответами на тест

возвращать откуда?


--------------------
wmr - R281553014107
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
AllesKlar  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 3471
Пользователь №: 38635
На форуме: 3 года, 2 месяца, 26 дней
Карма: 184




Цитата (Valick @ 1.11.2015 - 05:34)
возвращать откуда?

Из массива, который будет жестко прописан в этой функции.
А когда он дойдет до баз, то этот массив ему заполнит запрос из базы.
А как вскипятить пустой чайник, мы уже знаем (С)


--------------------
[продано копирайтерам]
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 5592
Пользователь №: 35718
На форуме: 4 года, 4 месяца, 4 дня
Карма: 170




AllesKlar, возвращать извращать массив из массива?



--------------------
wmr - R281553014107
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
AllesKlar  
[x] Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 3471
Пользователь №: 38635
На форуме: 3 года, 2 месяца, 26 дней
Карма: 184




Valick
// не умеет работать с базой
function getTset()
{
$test = [
[
'name' => 'Тест 1', 'correct' => 1, 'questions' => ['Вопрос 1', 'Вопрос 2', 'Вопрос 3']],
[
'name' => 'Тест 2', 'correct' => 0, 'questions' => ['Вопрос 1', 'Вопрос 2', 'Вопрос 3']],
[
'name' => 'Тест 3', 'correct' => 2, 'questions' => ['Вопрос 1', 'Вопрос 2', 'Вопрос 3']],
];


return $test;
}

$test = getTest();
...
...


// научился работать с базой
function getTset()
{
$test = [];
$sql = 'SELECT * FROM test LEFT JOIN test_questions ....';
$db->query($sql);
while($row = $db->fetch_assoc()) {
$test[]= ....;
}

return $test;
}

$test = getTest();
...
...




P.S. Я женат и меня не интересуют мужчины.


--------------------
[продано копирайтерам]
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 5592
Пользователь №: 35718
На форуме: 4 года, 4 месяца, 4 дня
Карма: 170




AllesKlar, перестаньте подкреплять своим кодом мои подозрения


--------------------
wmr - R281553014107
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
AllesKlar  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 3471
Пользователь №: 38635
На форуме: 3 года, 2 месяца, 26 дней
Карма: 184




Valick
А я не стесняюсь чего-то не знать и спросить.
Спрашиваю: а что не так в моем коде?

И пожалуйста, еще раз акцептирую: Я женат и меня не интересуют мужчины.
Поэтому, если ты просто решил вступить в половую связь с моими мозгами, то лучше не надо... я осуждаю гомосексуальные связи.


--------------------
[продано копирайтерам]
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 5592
Пользователь №: 35718
На форуме: 4 года, 4 месяца, 4 дня
Карма: 170




Цитата (AllesKlar @ 1.11.2015 - 10:41)
вступить в половую связь с моими мозгами

так этож я "горем от ума" поделиться
Цитата (AllesKlar @ 1.11.2015 - 10:41)
я осуждаю гомосексуальные связи

а как же пресловутая европейская толерантность?


Цитата (AllesKlar @ 1.11.2015 - 10:41)
что не так в моем коде?

да то что РНР <> PHP+MySQL, а ты изначально вбиваешь человеку в голову PHP = PHP+MySQL


--------------------
wmr - R281553014107
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
AllesKlar  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 3471
Пользователь №: 38635
На форуме: 3 года, 2 месяца, 26 дней
Карма: 184




Valick
А вон оно че... ну ясно.
Тогда выражусь более доходчиво:
Свернутый текст
Если ты решил выебать мне мозг, то хрен у тебя выйдет.

Цитата (Valick @ 1.11.2015 - 10:27)
да то что РНР <> PHP+MySQL, а ты изначально вбиваешь человеку в голову PHP = PHP+MySQL

biggrin.gif
1: ТС новенький, ему до баз еще расти и расти.
2: Ты прикинь???!!!
user posted image

А есть еще у нас тут адепт PostgreSQL....

Поэтому, Валюша, солнце... сними девочку и люби ее, а сейчас ты только себя позоришь, пытаясь до меня доипаться smile.gif


--------------------
[продано копирайтерам]
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 5592
Пользователь №: 35718
На форуме: 4 года, 4 месяца, 4 дня
Карма: 170




AllesKlar, вам немцам не понять русскую душу biggrin.gif


--------------------
wmr - R281553014107
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (3) [1] 2 3  Ответ в темуСоздание новой темыСоздание опроса