Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> отображения процеса считывания файла 
:(
    Опции темы
chiffa
Дата 24.9.2007, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 734
Регистрация: 11.11.2003

Репутация: -1
Всего: -1



Всем привет. Столкнулся с одной задачкой. Нужно показать процес читывания файла по средствам прогресс-бара. Идея элементарна, считываю по 1024 байта и дальше просто расчитываю в зависимости от размера файла и вывожу в число в параметр width картинки. Все бы ничего, но при попытке реализации получается что браузер просто виснет:


Код

$ddd=0;
$fp=fopen ("D:/AgileMesseng.rar", "r");
while (!feof($fp))
{
$order28=fgets ($fp,1024);

$ddd=$ddd+1024;

echo "<img src='1.gif' width='$ddd'>";

}
fclose ($fp);


тоесть страничка грузится... грузит... грузится... пока файл не отпроектся полностью, тоесть нужно эффекта не достигается. Может кто подскажет как с этим бороться? Зарание всем спасибо smile
PM MAIL   Вверх
Guedda
Дата 24.9.2007, 12:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

Репутация: 13
Всего: 78



AJAX


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
comcon1
Дата 24.9.2007, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 11.6.2005
Где: Москва ДАС-МГУ

Репутация: нет
Всего: 17



если просто средствами РНР, то нужно делать ифрейм, в нем маленький html-файл, который рефрешится раз в секунду,  раз в секунду переписывать HTML-файл во время загрузки твоего файла.

Это сообщение отредактировал(а) comcon1 - 24.9.2007, 12:47


--------------------
PM MAIL   Вверх
BuShaRt
Дата 24.9.2007, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1391
Регистрация: 29.6.2006

Репутация: 4
Всего: 6



Guedda
Скоро матом начну ругаться. Интересно авторы, таких ответов, хоть в курсе, что такое AJAX, кроме того как он выглядит?

chiffa
Нечего страшного, что PHP-скрипты выполняються сначала на сервере, а потом только отсылают пользователю HTTP - запрос - ответ?
PM MAIL   Вверх
chiffa
Дата 24.9.2007, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 734
Регистрация: 11.11.2003

Репутация: -1
Всего: -1



Цитата(comcon1 @  24.9.2007,  12:46 Найти цитируемый пост)
если просто средствами РНР, то нужно делать ифрейм, в нем маленький html-файл, который рефрешится раз в секунду,  раз в секунду переписывать HTML-файл во время загрузки твоего файла.


Пробывал. не проходит.



Цитата(BuShaRt @  24.9.2007,  15:31 Найти цитируемый пост)
Нечего страшного, что PHP-скрипты выполняються сначала на сервере, а потом только отсылают пользователю HTTP - запрос - ответ? 


Так что с этого мне ж не нужно вывести с ходу весь результат. Разве никак нельзя поэтапно получать информацию из скрипта? тоесть к примеру: считало 024 байта, записало в переменную значание 1 другой скрипт берет это значение с это переменной и шкала увеличилась на одни. Записало значение 2, скрипт прочитал шкала возросла еще на 1 и т.д. Проблема в том что в одном файле или через фреймы это не получается сделать
PM MAIL   Вверх
BuShaRt
Дата 24.9.2007, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1391
Регистрация: 29.6.2006

Репутация: 4
Всего: 6



chiffa
О каких переменных речь идет в ответе сервера, по средствам HTTP - протокола?
PM MAIL   Вверх
chiffa
Дата 24.9.2007, 16:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 734
Регистрация: 11.11.2003

Репутация: -1
Всего: -1



какая я уже приводил в самом первом скрипте:
Код

$ddd=0;
$fp=fopen ("D:/AgileMesseng.rar", "r");
while (!feof($fp))
{
$order28=fgets ($fp,1024);

$ddd=$ddd+1024;

echo "<img src='1.gif' width='$ddd'>";

}
fclose ($fp);



каждый раз когда скрипт считывает по 1024 байта переменная $ddd увеличивается на эти 1024 байта вот именно это увеличение мне и необходимо отлавливать и отображать.
PM MAIL   Вверх
sTa1kEr
Дата 24.9.2007, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


9/10 программиста
***


Профиль
Группа: Завсегдатай
Сообщений: 1553
Регистрация: 21.2.2007

Репутация: 56
Всего: 146



Цитата(BuShaRt @  24.9.2007,  15:31 Найти цитируемый пост)
Скоро матом начну ругаться. Интересно авторы, таких ответов, хоть в курсе, что такое AJAX, кроме того как он выглядит?

Интересно, а с чего вы взяли, что тут через AJAX нельзя реализовать? Другое дело, что это можно проще сделать.

chiffa, можно попробовать выдавать браузеру JS код, который и будет растягивать картинку
Код

echo <<< EOF
<script type="text/javascript">
function progress(i)
{
   var o = document.getElementById("progressBar");
   o.width = o.width + i;
}
</script>
<img src='1.gif' width='0' id='progressBar'>
EOF;

$ddd=0;
$fp=fopen ("D:/AgileMesseng.rar", "r");
while (!feof($fp))
{
   $order28=fgets ($fp,1024);
   $ddd=$ddd+1024;

   echo "<script type=\"text/javascript\">progress(10);</script>"
   flush();

}
fclose ($fp);


Добавлено @ 16:29
Правда исходный код HTML будет выглядеть страшно smile

Это сообщение отредактировал(а) sTa1kEr - 24.9.2007, 16:30
PM MAIL   Вверх
chiffa
Дата 24.9.2007, 16:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 734
Регистрация: 11.11.2003

Репутация: -1
Всего: -1



sTa1kEr, пасиба! впринципе оно. сейчас буду подгонять под свои нужды smile))
PM MAIL   Вверх
BuShaRt
Дата 24.9.2007, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1391
Регистрация: 29.6.2006

Репутация: 4
Всего: 6



sTa1kEr
Суть не в этом, а в том, что зачастую когда идет речь о JS, многие почему-то не думая пишут AJAX, приравнивая технологию к полноценном средству программирования, когда средством являеться JS.
PM MAIL   Вверх
kepa
Дата 25.9.2007, 10:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 25.9.2007

Репутация: нет
Всего: нет



Мастера, есть сильно волнующий вопрос:

Значит, у меня на серваке есть файл (myfile.dat), нужен скриптик, который открывает этот файл в HTML странице и чтобы его можно было редактировать, и чтобы была кнопочка "Сохранить"....... помогите, как это организовать, или может у кого-то уже есть...... скиньте на мыло...

PM MAIL   Вверх
MoLeX
Дата 25.9.2007, 10:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: 46
Всего: 140



Код

<?php
$file_array = file("Имя_Файл");
echo "<textarea name=\"txtn\" cols=\"90\" rows=\"25\">";
    for($i=0; $i<count($file_array); $i++)
    { 
        printf(htmlspecialchars($file_array[$i]));
    }
echo "</textarea>";
?>


kepa, кнопочку сохранить сам сделаешь...

Это сообщение отредактировал(а) MoLeX - 25.9.2007, 10:54


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
console
Дата 25.9.2007, 13:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 307
Регистрация: 12.2.2007
Где: Belarus::Minsk

Репутация: 2
Всего: 3



зачем такой изврат?
Код

<?php
$file_array = file_get_contents("Имя_Файл");
echo "<textarea name=\"txtn\" cols=\"90\" rows=\"25\">";
     
echo(htmlspecialchars($file_array));
    
echo "</textarea>";
?>



--------------------
user posted image
Nothing is impossible
My WeBlog
PM MAIL WWW ICQ   Вверх
kepa
Дата 25.9.2007, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 25.9.2007

Репутация: нет
Всего: нет



всё ок, файл открывается и редактируется, но как примостить кнопочку "Сохранить", и чтобы когда на неё нажимаеш сохронялись изменения????   

Это сообщение отредактировал(а) kepa - 25.9.2007, 18:41
PM MAIL   Вверх
Daevaorn
Дата 25.9.2007, 19:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: нет
Всего: 70



Цитата(BuShaRt @  24.9.2007,  22:20 Найти цитируемый пост)
Суть не в этом, а в том, что зачастую когда идет речь о JS, многие почему-то не думая пишут AJAX, приравнивая технологию к полноценном средству программирования, когда средством являеться JS. 

тоже странная формулировка http://slovari.yandex.ru/dict/ushakov/arti...%82%D0%B2%D0%BE
PM MAIL WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1333 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.