Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Как сделать "занавеску" на этот скрипт / 9 сообщений из 9, страница 1 из 1
10.12.2004, 19:25
    #32824173
Николай_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать "занавеску" на этот скрипт
Есть скрипт:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
<?php
if (!isset($_GET['action'])) {
exit;
}
?>
<html>
<head>
<title>Администрирование</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<link href="/update/template.css" rel="stylesheet" type="text/css">
</head>
<body><br><br>
<?php
if ($_GET['action']=='step2') {

$file_conf = $HTTP_SERVER_VARS['DOCUMENT_ROOT']."/admin/update/conf.inc.php";
INCLUDE($file_conf);

if (!file_exists($file_local)) {
?>
<span class="thead">   Ошибочка вышла...</span><br><br>
  <span class="message">Файл для синхронизации на локальном сервере отсутствует!</span><br><br>
<input type="button" class="button" onClick="javascript:history.back(1)" value="Вернуться назад">
</body>
</html>
<?php
exit;
}

set_time_limit( 300 );

$conn_id = @ftp_connect($ftp_server,$ftp_port,$ftp_timeout);
if (!$conn_id) {
?>
<span class="thead">   Ошибочка вышла...</span><br><br>
  <span class="message">Ошибка при соединении с FTP сервером! </span><br><br>
<input type="button" class="button" onClick="javascript:history.back(1)" value="Вернуться назад">
</body>
</html>
<?php
exit;
}

$login_result = ftp_login($conn_id, $ftp_user, $ftp_pass);
if (!$login_result) {
?>
<span class="thead">   Ошибочка вышла...</span><br><br>
  <span class="message">Имя пользователя и Пароль для входа на FTP сервер неправильные! </span><br><br>
<input type="button" class="button" onClick="javascript:history.back(1)" value="Вернуться назад">
</body>
</html>
<?php
@ftp_close($conn_id);
exit;
}

if (!ftp_chdir($conn_id, $folder_remote)) {
?>
<span class="thead"> Ошибочка вышла...</span><br><br>
  <span class="message"> Не могу сменить директорию! </span><br><br>
<input type="button" class="button" onClick="javascript:history.back(1)" value="Вернуться назад">
</body>
</html>
<?php
@ftp_close($conn_id);
exit;
}

if (!ftp_put($conn_id, $file_remote, $file_local, FTP_BINARY)) {
?>
<span class="thead">   Ошибочка вышла...</span><br><br>
  <span class="message"> Не могу закачать файл на FTP сервер! </span><br><br>
<input type="button" class="button" onClick="javascript:history.back(1)" value="Вернуться назад">
</body>
</html>
<?php
@ftp_close($conn_id);
exit;
}

$f_remote = @ftp_size($conn_id, $file_remote);
if ($f_remote == - 1 ) {
?>
<span class="thead">   Ошибочка вышла...</span><br><br>
  <span class="message"> Не могу закачать файл на FTP сервер! </span><br><br>
<input type="button" class="button" onClick="javascript:history.back(1)" value="Вернуться назад">
</body>
</html>
<?php
@ftp_close($conn_id);
exit;
}

$f_local = @filesize($file_local);

if ($f_remote == $f_local) {
if (!unlink($file_local)) {
print "<span class=\"thead\">   Ошибочка вышла...</span><br><br>\n";
print "  <span class=\"message\">Не могу удалить локальный файл на серевере!</span><br><br>\n";
print "<input type=\"button\" class=\"button\" onClick=\"javascript:history.back( 1 )\" value=\"Вернуться назад\">\n";
print "</body>\n";
print "</html>\n";
@ftp_close($conn_id);
exit;
}
?>
<span class="sectiontableentry3">   <b>Файл загружен!</b>   </span><br>
<script language="javascript">
setTimeout("location='update.php?action=step3'", 5000 );
</script>
<?
}
else {
?>
<span class="thead">  Ошибочка вышла...</span><br><br>
<span class="message"> Размер загруженного файла не совпадает с оригиналом. Повторите операцию загрузки файла заново! </span><br><br>
<input type="button" class="button" onClick="javascript:history.back(1)" value="Вернуться назад">
</body>
</html>
<?php
@ftp_close($conn_id);
exit;
}
@ftp_close($conn_id);
}
else {exit;}
?>
</body>
</html>
Как сделать так, чтобы "занавеска" висела до тех пор, пока не будет выполнен этот скрипт. Когда этот скрипт выполнился, должна отобразиться надпись -> Файл загружен!
...
Рейтинг: 0 / 0
13.12.2004, 10:44
    #32825156
Николай_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать "занавеску" на этот скрипт
А как вообще можно повесить "занавеску" на выполнение PHP скрипта. Т.е. покуда не отобразится вся PHP страница, должна висеть "занавеска"?

P.S. Занавеска - рисунок (или что-нибудь) во время загрузки страницы.
...
Рейтинг: 0 / 0
13.12.2004, 10:57
    #32825174
*
*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать "занавеску" на этот скрипт
Отдаёшь скриптом пользователю контент "занавески" и делаешь flush (естесственно, сжатие контента и использование буфера вывода должны быть исключены). Затем по факту завершения работы скрипта выдаёшь пользователю JS-код, который убирает занавеску.
PS: естесственно, пользователи с отключенным JS идут лесом - для них можно просто написать что-то вроде <noscript>РАБОТА СКРИПТА ЗАВЕРШЕНА</noscript> - но вот только заметят ли они эту надпись? ;)
...
Рейтинг: 0 / 0
13.12.2004, 11:38
    #32825214
Vovan_Tverskoy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать "занавеску" на этот скрипт
Guestестесственно, сжатие контента , можешь подскажешь как?
...
Рейтинг: 0 / 0
13.12.2004, 12:58
    #32825327
*
*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать "занавеску" на этот скрипт
Что? Смотри в настройках апача и php, читай ман на предмет изучения ini_set - во-первых, не факт, что сжатие у тебя включено, во-вторых, не факт, что тебе удасться от него избавиться.
...
Рейтинг: 0 / 0
13.12.2004, 19:08
    #32825741
Николай_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать "занавеску" на этот скрипт
*Отдаёшь скриптом пользователю контент "занавески" и делаешь flush . Затем по факту завершения работы скрипта выдаёшь пользователю JS-код, который убирает занавеску.
PS: естесственно, пользователи с отключенным JS идут лесом - для них можно просто написать что-то вроде <noscript>РАБОТА СКРИПТА ЗАВЕРШЕНА</noscript> - но вот только заметят ли они эту надпись? ;)

Всё конечно почти понятно. Но, а на примере можно показать. Что-то я не догоняю... :(
...
Рейтинг: 0 / 0
13.12.2004, 20:07
    #32825771
*
*
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать "занавеску" на этот скрипт
Получится что-то вроде этого
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<html>
<head></head>
<body>
Скрипт запущен <?=date('H:i:s');?><br>
<?php
  echo str_pad(' ', 512 );
  flush();
  sleep( 3 );
?>
<script>alert('Скрипт завершил свою работу в <?=date('H:i:s')?>')</script>
</body>
</html>
В JS, к сожалению, не силён :)
...
Рейтинг: 0 / 0
14.12.2004, 18:52
    #32827455
Николай_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать "занавеску" на этот скрипт
*Получится что-то вроде этого
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<html>
<head></head>
<body>
Скрипт запущен <?=date('H:i:s');?><br>
<?php
  echo str_pad(' ', 512 );
  flush();
  sleep( 3 );
?>
<script>alert('Скрипт завершил свою работу в <?=date('H:i:s')?>')</script>
</body>
</html>
В JS, к сожалению, не силён :)

СУПЕР !

ТО что нужно. Работает на ура! СПАСИБО!

P.S. Нашёл тут ещё, но у меня не заработало, почему-то?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
<body onload="document.getElementById('c').style.display='none'; document.getElementById('b').style.display='block'">
  <div id="c" style="display: block">
    занавеска
  </div>
  <div id="b" style="display: none">
    тут код страницы
  </div>
</body>
...
Рейтинг: 0 / 0
14.12.2004, 20:51
    #32827542
taj
taj
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать "занавеску" на этот скрипт
может не "не заработало", а ты не заметил как сработало?

--
Wo siang nide fanvan li ty le tang!(кит.:Я плюнул вам в рис, теперь вы умрёте!)
подпись сперта у перца с другого форума, но все равно красиво
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Как сделать "занавеску" на этот скрипт / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]