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

HTML+CSS+JavaScript

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

 

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

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

тема: Передача переменных между окнами
 
 автор: Jaroslav   (11.06.2008 в 12:12)   письмо автору
 
 

Здравствуйте.

Подскажите, пожалуйста. Вопросик такой.
На одной странице мы нажимает кнопку "обновить", при этом открывается новое окно (window.open) в котором выполняется PHP код. Можно ли сделать так, чтобы по завершении выполнения этого кода окно автоматически закрылось и чтобы произошла перезагрузка первой страницы? Т.е. вернуться на 1-ю страницу и передать ей какуб-нибудь переменую? Чтобы на ней можно было написать, что процесс выполение скрипта завершен?

С уважением,
Ярослав.

   
 
 автор: PAT   (11.06.2008 в 13:10)   письмо автору
 
   для: Jaroslav   (11.06.2008 в 12:12)
 

Можно. Если только новое окно открывать СКРИПТОМ методом window.open ()

Т.е. в коде индексного файла должен быть примерно такой код:
var NW = window.open ('адрес_страницы_с_PHP-скриптом*', 'какое-нить_имя', 'параметры_нового_окна');

* В адресе можете PHP-скрипту передать (если надо) какие-нить данные в виде query_string, т.е. какие-то значения после символа ?.
Например, http://сайт.ru/сценарий.php?user=Vasja&number=12345

PHP-скрипт, завершив свою работу, должен будет отдать новому окну код, в котором будет СКРИПТ, предающий команду индексному (родительскому) окну на перезагрузку и закрывающий текущее (новое) окно. Примерно так:
window.opener.document.location.reload ();
self.close ();

   
 
 автор: Jaroslav   (11.06.2008 в 13:59)   письмо автору
 
   для: PAT   (11.06.2008 в 13:10)
 

А как передать переменную из второго окна (которое закрывается) в первое?

   
 
 автор: PAT   (11.06.2008 в 14:19)   письмо автору
 
   для: Jaroslav   (11.06.2008 в 13:59)
 

window.opener.document.ИМЯ_ПЕРЕМЕННОЙ_В_РОДИТЕЛЬСКОМ_ОКНЕ = ЗНАЧЕНИЕ;

Обычно просто ПЕРЕДАТЬ значение - такое не делают.
Ибо переменная получит значение... ну и всё - действий же никаких не будет.

Обычно запускают в родительском окне функцию:
window.opener.document.ИМЯ_ФУНКЦИИ_В_РОДИТЕЛЬСКОМ_ОКНЕ (ПЕРЕДАВАЕМЫЕ_ЗНАЧЕНИЯ_ПАРАМЕТРОВ);

   
 
 автор: sim5   (11.06.2008 в 14:28)   письмо автору
 
   для: Jaroslav   (11.06.2008 в 13:59)
 

Это код главного окна:
<input type="text" name="as" id="as">
<script>
window.open('wn.html','','')
</script>

Это код страницы, которая вызывается в окне:
<script>
window.opener.document.getElementById('as').value = 'out'; 
self.close ();
</script>

   
Rambler's Top100
вверх

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