2015-01-26 3 views
0

У меня есть страница new.jsp. Я хочуВопросы типа экзамена в jsp

<table> 
**Question 1. What is the total value of 2+6?** 
<tr> 
<td><input type="radio" name="abc" value="6">6</td> 
</tr> 
<tr> 
<td><input type="radio" name="abc" value="7">7</td> 
</tr>` 
<tr> 
<td><input type="radio" name="abc" value="8">8</td> 
</tr> 
<tr> 
<td><input type="radio" name="abc" value="9">9</td> 
</tr> 
<tr> 
<td><input type="submit" name="abc" value="next"></td> 
</tr> 
</table> 

Как это я должен сделать 100 вопросов, для этого не представляется возможным создать 100 страниц JSP, так что же эти альтернативы ?? Пожалуйста, направляйте меня. Когда пользователь нажмет кнопку «Далее», тогда он перейдет к следующему вопросу, например, до 100-го вопроса, который он переместит, и ответы, выбранные им, будут автоматически сохранены, как я могу это сделать? Пожалуйста, помогите мне

+1

Создание базы данных вопросов, ответы и с-плюс правильного ответа и создать динамическую страницу, которая считывает из базы данных и генерирует страницу вопроса. Вам не нужно повторно создавать 100 JSP-страниц, и будет проще поддерживать и поддерживать 1 страницу вместо 100 JSP-страниц. Сделайте страницу динамической, а не статической. –

+0

Роль JSP должна быть динамичной, поэтому сервер должен получить правильную информацию, такую ​​как метка вашего вопроса и возможные ответы. Тогда вы могли бы создать свой собственный тег, но создание зависит от того, какую структуру вы выбираете (struts, spring mvc и т. Д.). – vincent

+0

@BuhakeSindi ya thnx для d info, но для ответа на один вопрос выбирается пользователем, после чего следующая кнопка, следующий вопрос будет извлечен из базы данных, вот так? – Tom

ответ

1

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

<td><input type="radio" name="abc" value="${option1}">${option1}</td> 

И когда пользователь щелкает рядом, вы говорите, Гото сервлет/другой JSP, получает следующий вопрос из БД/text/excel и соответственно устанавливает опцию 1, option2, поэтому она отображает одну и ту же страницу с одинаковым макетом, но с разными параметрами.

+0

ya thnx, но для английского, прохождение должно отображаться на странице jsp, как я могу выбрать прохождение 300 слов из базы данных? – Tom

+1

у вас может быть столбец varchar в вашей базе данных, и вы все равно можете использовать переменную типа String. – SMA

1

Как заявили Алмас, вы захотите создать шаблон с JSP и использовать базу данных. В одной таблице базы данных будут заданы вопросы, а другая - возможные ответы. Например таблицы базы данных могут быть:

CREATE TABLE question (id int auto_increment, question varchar(1000), sort int, primary key(id)); 
CREATE TABLE answer (id int auto_increment, question_id int, answer varchar(1000) sort int, primary key(id), foreign key (question_id) references question(id)); 

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

SELECT id, order, question FROM question WHERE sort > ? ORDER BY sort LIMIT 1; 

Это даст вам следующий вопрос. Если у вас есть вопрос, чтобы загрузить ответы запустить следующий с параметром является на вопрос ID

SELECT id, order, answer FROM question WHERE question id = ? ORDER BY sort; 

(Теперь вы можете сделать только один запрос вместо двух, но это становится все более сложным, и я стараюсь держать это просто. Если бы я был вами, я бы сделал один запрос.)

Я надеюсь, что это поможет.

Спасибо, David