Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как написать страничку с «неперезагружаемым» фреймом?
 
 автор: uralu   (26.10.2008 в 11:54)   письмо автору
 
 

Как написать страничку, в котором при вводе данных в форму не происходит перезагрузки страницы полностью, а обновляется только содержание одного контейнера (или фрейма). При этом другие контейнеры остаются в окне браузера, т.е. не загружаются с сервера заново. Это важно для сайтов в которых имеются «тяжелые» фреймы которых не нужно каждый раз загружать с сервера и «легкие» фреймы, которые нужно постоянно и максимально быстро перезагружать (как в чатах например).
В моем примере имеются две ячейки таблицы «Voprosy» и «Otvety».

Листинг index.php :

<table width="502" border="1" cellspacing="1" cellpadding="1">
<tr> <td>Voprosy</td> <td>Otvety           </td>  </tr>
<tr> <td> <?php include "vopros.php" ?>  </td>  <td>
   <form action="index.php" method="post">
     <label>A)<input type="radio" name="RadioGroup1" value="1" /> </label> <br>
     <label>B)<input type="radio" name="RadioGroup1" value="2" /> </label> <br>    
     <label>C)<input type="radio" name="RadioGroup1" value="3" /> </label> <br>
     <label>D)<input type="radio" name="RadioGroup1" value="4" /> </label> <br>
              <input type="submit" name="Submit" value="Submit">  
   </form> </td> </tr>
<!-- Zapis otvetov v DB i chtenie novih zadaniy. /-->


Листинг vopros.php :

<html> <head> <title> </title> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head> <body> <pre>
1. Vopros
A) Otvet1
B) Otvet2
C) Otvet3
D) Otvet4
</pre> </body> </html>


В этом примере, после выбора верного ответа и «Submit». Происходит перезагрузка всей страницы. В будущем это потребует много времени на загрузку т.к. страница будет очень «тяжелой».
Если учесть, что вопросов будет более 30, то у посетителей не хватит терпения.
Есть надежда: содержание контейнера «Voprosy», который нуждается в постоянном обновлении очень легкое. Поэтому, если решить, как сделать тяжелый контейнер «Otvety» постоянным, то проблема будет решена, т.к. при переходе на следующий вопрос будет обновляться только содержание контейнера «Voprosy». При этом контейнер «Otvety» снова загружаться не будет.
Еще одно условие: надо седлать так, чтобы после ввода каждого отдельного ответа выполнялось соединение с БД и сохранение выбранного ответа. Поэтому сразу говорю, что вариант с выводом всех вопросов в одном фрейме не годиться.

Какие технологии посоветует?

Заранее благодарю.

  Ответить  
 
 автор: ddhvvn   (26.10.2008 в 12:23)   письмо автору
 
   для: uralu   (26.10.2008 в 11:54)
 

>Какие технологии посоветует?

AJAX

  Ответить  
 
 автор: uralu   (27.10.2008 в 05:02)   письмо автору
 
   для: ddhvvn   (26.10.2008 в 12:23)
 

AJAX входин в состав PHP?
Не подскажите полезнык ссылки по AJAX?
Спасибо?

  Ответить  
 
 автор: Assessor   (27.10.2008 в 07:59)   письмо автору
 
   для: uralu   (27.10.2008 в 05:02)
 

AJAX - это не технология, не язык программирования, это техника использования смежных технологий... фактически это это DHTML с внедренным в него объектом xmlhttprequest, который способнен управлять процессами независимо от других процессов.
Вот здесь прочитайте http://www.ixbt.com/soft/ajax.shtml про объект XMLHttpRequest и его свойства.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования