Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: тестирование

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
SAD
Отправлено: 01 Апреля, 2010 - 17:53:09
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




Вот недавно поднималась тема http://forum.php.su/topic.php?fo...1&topic=3678
У меня немного сложнее.
Есть база вопросов - состоит из таких полей.
num(auto_increment), vopros, prav_otv, otvet1, otvet2, otvet3, otvet4, id_kurs(id курса), id_themes(id темы курса).
Допустим у меня есть 20 вопросов по теме. Для теста выбираю, например, 12, но для разных тем выбирается разное количество вопросов.
Вот идет тестирование и человек либо взял обновил страницу , либо закрыл страницу. Нужно , чтобы в обоих случаях появились те же вопросы. В сессию нельзя пихать данные как предлагалось выше в теме, т.к. на каждого человека есть сессия, то есть если он закроет страницу, потом войдет обратно на свою страницу!! он может уничтожить свою сессию, потом опять войти в систему под логином. То есть по идее нужно использовать базу. Я пробовал создавать отдельную таблицу на юзера куда заносил номера вопросов, и оттуда считывать данные пока он не закончит тестирование, а потом дропать ее. Но это лишняя нагрузка. Вот думаю, что придумать...Есть идеи?

(Отредактировано автором: 01 Апреля, 2010 - 17:54:30)

 
 Top
JustUserR
Отправлено: 01 Апреля, 2010 - 18:09:09
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




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


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
SAD
Отправлено: 01 Апреля, 2010 - 18:15:50
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




Не, мне информацию об отвеченных вопросах хранить не надо. Просто, чтобы появились те же вопросы. Просто время отведенное на тест уже будет меньше ))
 
 Top
JustUserR
Отправлено: 02 Апреля, 2010 - 16:51:29
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




SAD пишет:
Не, мне информацию об отвеченных вопросах хранить не надо. Просто, чтобы появились те же вопросы. Просто время отведенное на тест уже будет меньше ))
Как я понимаю цель следующая - вы хотите чтобы пользователь подключаясь на тестирование получал ряд вопросов и отвечал на них за отведенное время - но если он решит сбросить сессию то должно сохраняться уже прошеднее время - при этом информацию об ответах которые дал пользователь до сброса сесси хранить не нужно
Если все так то отвечаю - если у вас на сайте есть регистрация и тест привязан к конкретному тестируещемуся участнику то все очень просто - он начал тест и вы в базу написали время начала теста а в сессию сохранили ответы - он сбросил сессию но информация о минутых осталась Похожая ситуация и в том случае если заместо авторизаци у вас имеются типа коды тестирования - с каждым кодом такая же связь
Если же никакой регистрации (Точнее способо идентификации вообще Улыбка для пользователя не предусмотрено то конечно же что ответ - никак - но такая постановка вопроса и сама по себе малополезна


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB