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

Форум PHP

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

 

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

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

тема: fseek() - на что это влияет?
 
 автор: slonik   (09.10.2006 в 18:17)   письмо автору
 
 

Вот создаю велосипед, и с толкнулся с таким вопросом. В исходниках нашёл функцию для докачки файлов, отдаваемых через скрипт. Но столкнулся с такой проблемой, что файл менялся до того, как скачается. Оказалось, что одна строчка портила его работу:

  fseek($filenames, intval($range),0);


Убрал её, всё качается без проблем. И даже начал качать во много потоков! Есть догадки, что эта строчка каким то способом ограничивает скачку, чтобы небыло много потоков, т.е. делает меньшую нагрузку на сервер. Может, кто-нибудь сказать, что эта строчка точно делает? Заранее спасибо!

   
 
 автор: Trianon   (09.10.2006 в 18:45)   письмо автору
 
   для: slonik   (09.10.2006 в 18:17)
 

Эта функция в указанном применении не сделает ничего.
Хотя бы потому что не работает с именами файлов.
Она устанавливает позицию чтения/записи открытого файла, дескриптор (а не имя) которого задан первым параметорм. Устанавливает в положение, заданное вторым параметром.
Убирая её, Вы вероятно , лишь заставляете процесс загрузки идти от начала файла.
Если $filenames - это всё же не имя, а дескриптор открытого файла, то неприятности её применения могли быть вызваны тем, что в заголовке отклика Вы не формируете корректно поле Content-Range, и клиент считает, что отдается весь файл от нуля.

   
 
 автор: slonik   (09.10.2006 в 19:35)   письмо автору
 
   для: Trianon   (09.10.2006 в 18:45)
 

$filenames - это новое название для файла, которое создаётся в Content-Disposition

   
 
 автор: Trianon   (09.10.2006 в 19:38)   письмо автору
 
   для: slonik   (09.10.2006 в 19:35)
 

тогда такой вызов завершится неудачей. А в выходной поток попадет не участок файла, а сообщение об ошибке вызова функции fseek.

   
 
 автор: slonik   (09.10.2006 в 20:52)   письмо автору
 
   для: Trianon   (09.10.2006 в 19:38)
 

Эм? Никаких ошибок нет, всё рабоает как часы.

   
 
 автор: Trianon   (09.10.2006 в 21:02)   письмо автору
 
   для: slonik   (09.10.2006 в 20:52)
 

Вы бы код показали чтоли....

   
Rambler's Top100
вверх

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