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

> Простой тест на PHP
Valick  
Дата
Цитировать сообщение

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



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

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




Kusss, нет. Всего две таблицы.
уф...
таблица question
q_id - идентификатор строки
q_quest - вопрос

таблица answer
a_id - идентификатор строки
q_id - внешний ключ из таблицы question
a_answer - ответ на вопрос
a_correct - правильный (1) или неправильный (0) ответ


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

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



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

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 324
Пользователь №: 37433
На форуме: 3 года, 6 месяцев, 20 дней
Карма: 1




Цитата (Valick @ 15.11.2015 - 23:19)
maruo, таблица arbuzmaster соответствует 1нф. Но не соответсвует 2 нф.

какая именно? где not_ans 1,1,2,23,4,5,6>
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
arbuzmaster  
Дата
Цитировать сообщение

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



Новичок
******

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




Что то я не пойму, если Вы уже пошли по пути, что в таблице 2 значения id и valid_a , тогда и создайте такую же для неправильных ответов id и not_valid и будете из неё выводить три варианта за исключением правильного.


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

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



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

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 324
Пользователь №: 37433
На форуме: 3 года, 6 месяцев, 20 дней
Карма: 1




Цитата (Valick @ 15.11.2015 - 23:25)
Kusss, нет. Всего две таблицы.
уф...
таблица question
q_id - идентификатор строки
q_quest - вопрос

таблица answer
a_id - идентификатор строки
q_id - внешний ключ из таблицы question
a_answer - ответ на вопрос
a_correct - правильный (1) или неправильный (0) ответ

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

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



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

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




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


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

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



Новичок
******

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




А по сути Valick прав, достаточно и 2-х таблиц. Ведь из правильных ответов на все вопросы можно составить список неправильных.


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

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



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

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




Цитата (maruo @ 15.11.2015 - 22:36)
А где здесь варианты ответов

таблица answer
a_id | q_id | a_answer | a_correct
1 | 1 | 1 ответ на 1 вопрос | 0
2 | 1 | 2 ответ на 1 вопрос | 1
3 | 2 | 1 ответ на 2 вопрос | 1
4 | 1 | 3 ответ на 1 вопрос | 1
5 | 1 | 4 ответ на 1 вопрос | 0
6 | 2 | 2 ответ на 2 вопрос | 0
7 | 1 | 5 ответ на 1 вопрос | 0


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

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



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

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




Цитата (arbuzmaster @ 15.11.2015 - 22:39)
Ведь из правильных ответов на все вопросы можно составить список неправильных

Технически можно, но не нужно. Иначе очень глупо будут звучать ответы на вопросы. Из разряда "потому что гладиолус".
Если уж очень хочется, то можно изменить отношение на многие ко многим и добавить таблицу связи, тогда один и тот же ответ можно использовать для разных вопросов, но корректность ответа надо будет тоже перенести в эту таблицу связи.
Но мы ведь пишем простой тест smile.gif не надо усложнять себе жизнь раньше времени.

Забегая вперёд скажу, что рандомные варианты ответов больше вредят тесту чем усложняют его. Проходя тест повторно можно исключить некоторые варианты ответов, правильный вариант ответа будет присутствовать всегда. Если конечно сделать рандом еще и из правильных ответов, то в принципе будет лучше. Но это опять не попадает под определение простого теста. Лучше сделать одинаковое количество ответов на определённый вопрос (хотя на разные вопросы может быть разное количество ответов) например на первый вопрос 4 ответа, на второй вопрос 5 ответов. А вот выводить их можно в произвольном рандомном порядке, это будет лучшим вариантом, но это в будущем. Начнём с самого простого.


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

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



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

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




Завтра создадим таблицы в БД. Набьём вопросов и ответов и сделаем html форму.


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

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



Новичок
******

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




Как я понял то в результате мы получим следующее?
Вопросы:
q_id: 1 | question: Какого цвета крокодил?
Ответы:
id: 1 | q_id: 1 | a_answer: Зеленый | a_correct: 1
id: 2 | q_id: 1 | a_answer: Желтый | a_correct: 0
id: 3 | q_id: 1 | a_answer: Оранжевый | a_correct: 0
id: 4 | q_id: 1 | a_answer: Синий | a_correct: 0


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

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



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

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




arbuzmaster, да, именно так. Вариантов ответов может быть хоть 100000000 и правильных из них от 1 до 100000000. Создавая БД мы изначально не ограничиваем себя в этом.
Сегодня захотели 5 вариантов ответов на каждый вопрос - пожалуйста. Завтра захотели 6 вариантов - пожалуйста. Послезавтра захотели на каждый вопрос произвольное количество ответов да не вопрос. Мы не меняем ни код ни БД, мы просто либо добавляем либо убираем варианты в БД. Причём структура БД тоже не меняется. Мы оперируем только данными(!)


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

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



Новичок
******

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




Valick спасибо возьму на заметку!!


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

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



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

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 324
Пользователь №: 37433
На форуме: 3 года, 6 месяцев, 20 дней
Карма: 1




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

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



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

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




maruo, я вам дал структуру бд и показал как будут варианты ответов располагаться. Разбирайтесь, у вас вся ночь впереди user posted image


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

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



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

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 324
Пользователь №: 37433
На форуме: 3 года, 6 месяцев, 20 дней
Карма: 1




ТОесть мы создаем первую таблу.
queston_id || question
1 ||Сколько будет 2+2?

2я таблица у нас будет.
answer_id || question_id||more_answer||а тут 0 или 1 в качестве проверки ?
1 || 1 || Два || 0
2 || 1 ||три ||0
3 || 1 || Четыре ||1
4 || 1 ||Десять ||0

Вроде бы понял наверно?

ммм у меня проблема с внешними ключами, точнее я о них узнал только сегодня ,командная строка само собой, но при создании бд она меня накаливает.
А вот как в phpmyadmin это сделать будет идентично?
Надо будет question_id соединить с id_qiestion с первой таблицы?
что мне это даст?


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

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

Опции темыСтраницы: (20) « Первая ... 2 3 [4] 5 6 ... Последняя » Ответ в темуСоздание новой темыСоздание опроса