|
|
|
|
|
для: XPraptor
(17.01.2005 в 12:02)
| | <SCRIPT language="JavaScript">
this.location.reload();
</SCRIPT>
ето, наверное, поможет. Спасиба | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(17.01.2005 в 11:15)
| | Комбинировать можно, если PHP таймаут ставит, например вот так:
Страница состоит только из этого кода и все:
<?php
... считываем файл
... записываем файл
?>
<SCRIPT language="JavaScript">
this.location.reload();
</SCRIPT>
А если вместо this.location.reload(); написать:
window.open(this.location, 'new_window'); то такое начнется %-[] | |
|
|
|
|
|
|
|
для: BlackWind
(15.01.2005 в 08:52)
| | >Если делать типа
>....
>то браузер ругается по таймауту.
Это PHP ругается. PHP-скрипты не могут выполняться бесконечно. У них стоит ограничение на время выполнения. Секунд 30. Нужно решать Вашу задачу другими приемами. | |
|
|
|
|
|
|
|
для: BlackWind
(17.01.2005 в 08:05)
| | >Но нужно, чтобы считывание шло неприрывно.
Так а что считывать если файл кончился?
Бесконечно считать все равно не получится. Время выполнения скрипта, выставленное на сервере, будет превышено.
Т.е. не ясны условия задачи | |
|
|
|
|
|
|
|
для: cheops
(15.01.2005 в 12:47)
| | while(!feof($sr))
{
$line = fgets($sr);
// Преобразуем строку $line
fputs($ds,$line);
}
Получается, что если достигнут конец файла, то цикл заканчивается. Но нужно, чтобы считывание шло неприрывно. | |
|
|
|
|
|
|
|
для: BlackWind
(15.01.2005 в 08:52)
| | Для этого можно воспользоваться функцией feof(), которая принимает дискриптор открытого файла и возвращает true, если достигнут конец файла и false в противном случае.
<?php
// Имя файла-источника
$source = "count.txt";
// Имя файла-приёмника
$destination = "count_new.txt";
// Открываем файл-источник для чтения
$sr = fopen($source,"r");
// Открываем файл-приёмник для записи
$ds = fopen($destination,"w");
// В цикле перебрасываем содержимое
// файла-источника в файл-приёмник
while(!feof($sr))
{
$line = fgets($sr);
// Преобразуем строку $line
fputs($ds,$line);
}
// Закрываем файл-источник
fclose($sr);
// Закрываем файл-приёмник
fclose($ds);
?>
|
Кстати, можно здорово сократить время выполнения скрипта и состояния когда файлы заняты скриптом, если читать содержимое файла целиком в какую-нибудь буферную переменную $buffer:
<?php
// Имя файла-источника
$source = "count.txt";
// Имя файла-приёмника
$destination = "count_new.txt";
// Открываем файл-источник для чтения
$sr = fopen($source,"r");
// Извлекаем содержимое файла
// в буферную переменную
$buffer = fread($sr,filesize($source));
// Закрываем файл-источник
fclose($sr);
// Модифицируем строку $buffer
// Открываем файл-приёмник для записи
$ds = fopen($destination,"w");
// Перезаписываем содержимое файла-приёмника
fwrite($ds,$buffer);
// Закрываем файл-приёмник
fclose($ds);
?>
|
| |
|
|
|
|
|
|
| Люди подскажите, как сделать бесконечный цикл, но чтобы браузер не ругался. Нужно, допустим, считать один файл и записать в другой.
Если делать типа
do
{
считываем
обрабатываем
записываем
}
while (1);
то браузер ругается по таймауту. | |
|
|
|
|