Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> убрать возврат на страницу обратно 
:(
    Опции темы
ILyAHA
Дата 5.6.2008, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Гламурный хакер
*


Профиль
Группа: Участник
Сообщений: 193
Регистрация: 30.3.2007
Где: Ярославская обл. г.Рыбинск

Репутация: нет
Всего: 3



В инсте, чтоб не париться с физикой сильно и получить отлично сразу автоматом, дали задание по написанию тестирующего сервера... т.е. есть комп... на нем есть сервер(тот который пишу), так же есть компы, за которыми тестируются студенты(но в не суть в том что есть другие компы)
Дак вот!

Студент зарегивается... Начинает проходить тест... заканчивает проходить его... Нажимает на "закончить тест"
После появляется страничка с результатами правильных и не правильных ответов...

Проблема возникает такая:

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

Как это исправить?
--------------------
<sсriрt>alert('xss')</sсriрt>
PM MAIL   Вверх
skyboy
Дата 5.6.2008, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



тут думать сильно не надо.
приделать авторизацию и все.
если авторизация есть(не представляю, как без авторизации предполагается выдавать отчет преподавателю об успеваемости), то какая проблема? надо проверять, не проходил ли человек этот тест.
можно даже хранить список заданных вопросов и задавать уже другие, которые в прошлый рз не прозвучали.
PM MAIL   Вверх
ILyAHA
Дата 5.6.2008, 21:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Гламурный хакер
*


Профиль
Группа: Участник
Сообщений: 193
Регистрация: 30.3.2007
Где: Ярославская обл. г.Рыбинск

Репутация: нет
Всего: 3



Авторизация конечно есть. т.е. сначала студент регится, а потом заходит под своим аккаунтом...

>>надо проверять, не проходил ли человек этот тест.

именно это и надо.... я новичок в php программировании... поэтому можете объяснить как сделать, лучше бы с примером...

если я правильно понял, то нужно завести для каждого аккаунта флажок...

но куда его вставить?

P.S.: так же использую mysql
--------------------
<sсriрt>alert('xss')</sсriрt>
PM MAIL   Вверх
skyboy
Дата 5.6.2008, 21:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



ILyAHA, результаты тестирования у тебя хранятся в БД?
а какой вариант ты выбираешь? позволишь проходить по нескольку раз, но с другими вопросами? или чтоб тест тоьлко раз можно было пройти?
в любом случае, тебе надо предусмотреть хранения списка либо вопросов, либо тестов(лучше, конечно, чтоб все динамические данные(от названия тестов до оценок) хранилось в БД) в виде отдельной таблицы.
тогда тебе останется добавить таблицу для хранения связи между студентом(точнее, авторизационным аккаунтом) и вопросм(или тестом). само наличие связи и будет "флажком".
Цитата(ILyAHA @  5.6.2008,  20:43 Найти цитируемый пост)
лучше бы с примером...

в данном случае, пример - сама система, что ли?
PM MAIL   Вверх
ILyAHA
Дата 5.6.2008, 22:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Гламурный хакер
*


Профиль
Группа: Участник
Сообщений: 193
Регистрация: 30.3.2007
Где: Ярославская обл. г.Рыбинск

Репутация: нет
Всего: 3



Цитата

а какой вариант ты выбираешь? позволишь проходить по нескольку раз, но с другими вопросами? или чтоб тест тоьлко раз можно было пройти?


только пройти один раз...

Добавлено через 2 минуты и 15 секунд
у меня хранится список вопросов, и ответов на них в БД...

Добавлено через 2 минуты и 43 секунды
а также результаты тестирования
--------------------
<sсriрt>alert('xss')</sсriрt>
PM MAIL   Вверх
skyboy
Дата 5.6.2008, 23:51 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



хм. ну, раз у тебя один-единственный тест, то храни в поле в таблице студентов значение - проходил тест или нет.
в чем проблема?
PM MAIL   Вверх
MoLeX
Дата 6.6.2008, 06:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



Цитата(ILyAHA @  5.6.2008,  21:06 Найти цитируемый пост)
Пользователь может просто нажать в браузере на кнопочку означающую - перейти на страницу назад...

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

Добавлено через 54 секунды
да, программку можно оформить как угодно что водить в тупик любителей хака. (ну от куда им знать что это обычный осел  smile )


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
ILyAHA
Дата 6.6.2008, 12:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Гламурный хакер
*


Профиль
Группа: Участник
Сообщений: 193
Регистрация: 30.3.2007
Где: Ярославская обл. г.Рыбинск

Репутация: нет
Всего: 3



MoLeX, а можно спросить, что за компонент "Осел" ?
--------------------
<sсriрt>alert('xss')</sсriрt>
PM MAIL   Вверх
Pokoinik
Дата 6.6.2008, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 283
Регистрация: 17.3.2007
Где: /dev/null

Репутация: 2
Всего: 3



ILyAHA, internet explorer


--------------------
ICQ: 490-993
Существует только 10 типов людей: те, которые понимают двоичную систему, и которые ее не понимают!!!
Опасайтесь людей верующих, ибо у них есть боги, которые им все прощают.

Делай или не делай! Никаких попробую!
Йода (Yoda), мастер-джедай
PM MAIL ICQ   Вверх
uNabL3
Дата 6.6.2008, 20:09 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 17.10.2007

Репутация: нет
Всего: нет



header( 'Expires: Mon, 26 Jul 1997 05:00:00 GMT' );
header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s' ) . ' GMT' );
header( 'Cache-Control: no-store, no-cache, must-revalidate' );
header( 'Cache-Control: post-check=0, pre-check=0', false );
header( 'Pragma: no-cache' );
В начало скрипта и пусть бедные студенты долбят назад хоть до посинения )))))) 
PM MAIL   Вверх
MoLeX
Дата 7.6.2008, 06:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



Цитата(ILyAHA @  6.6.2008,  12:35 Найти цитируемый пост)
что за компонент "Осел" ? 

в делфи он звучит приблизительно так TWebBrowser, есть еще аналог это компонента - Embedded Web Browser


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
helflip
  Дата 7.6.2008, 12:03 (ссылка)   | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 146
Регистрация: 14.5.2006
Где: Moscow

Репутация: 2
Всего: 4



Можно сделать совсем просто! заводишь две переменные $_SESSION['allQuest'] и $_SESSION['thisQuest'].
В $_SESSION['allQuest'] заносишь общее количество вопросов, а в $_SESSION['thisQuest'] номер текущего вопроса! И в начало скрипта вставляешь проверку чтобы $_SESSION['allQuest'] не равнялся $_SESSION['thisQuest']! Это чтобы чел не смог вернуться назад! Или если в базе хранится и результаты тестирования и и список студентов, то делаешь проверку! С базой совсем простоsmile smile 
--------------------
 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0554 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.