Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 01.05.2013 01:40:54

aideremir

Response::download($path) - Image corrupt or truncated

собственно сабж говорит сам за себя...

$path содержит правильный путь до картинки, картинка прекрасно читается, грузится через браузер, но после сохранения посмотреть её невозможно. Вроде ничего до вызова Response::download не выводится...
Кто-нибудь сталкивался с таким?

#2 01.05.2013 09:14:41

Re: Response::download($path) - Image corrupt or truncated

Сравни сохраняемый файл в hex-редакторе (WinHex или 010 Editor, у последнего есть бинарный diff). Посмотри на размер файла — совпадает ли он с исходным?

Не в сети

#3 04.05.2013 01:53:14

aideremir

Re: Response::download($path) - Image corrupt or truncated

Спасибо за совет. Но до hex-редакторов даже не дошёл, открыл в notepad++ - вижу в самом начале у сохраняемого перенос строки стоит. Откуда он мог взяться?

#4 04.05.2013 08:05:17

Re: Response::download($path) - Image corrupt or truncated

Отключи буферизацию вывода в laravel.php и сделай перед вызовом download() вызов headers_sent с обоими параметрами — узнаешь, откуда взялся вывод. Возможно в каком-то из твоих скриптов перед <?php стоит пробел или файл сохранён с UTF-8 BOM.

Не в сети

#5 04.05.2013 17:35:25

aideremir

Re: Response::download($path) - Image corrupt or truncated

имеется в виду laravel/laravel.php ?
где там отключить буферизацию вывода? в контроллере вызвал headers_sent перед download() - выдает bool(false).
Речь идёт о бандле administrator (frozennode.com) - попробовал сделать такую же загрузку файла в своём application - работает нормально и доп. символов не выдает.
Есть ли какая-то "искалка" файлов с UTF-8 BOM?

#6 04.05.2013 18:08:44

aideremir

Re: Response::download($path) - Image corrupt or truncated

нашёл!!! мой косяк smile век живи - век учись как говорится) по привычке ставил в файлах закрывающие теги ?> , а после них и энтеры и пробелы и чего только не было. Прошу прощения за беспокойство. Спасибо за оперативные ответы.

#7 04.05.2013 19:07:01

Re: Response::download($path) - Image corrupt or truncated

  1. имеется в виду laravel/laravel.php?

Ошибся, в laravel/core.php. До сих пор не могу понять, зачем Taylor делает буферизацию именно с mb_output_handler.

  1. по привычке ставил в файлах закрывающие теги ?>

Я уже их несколько лет как не использую, совсем забыл, что у кого-то они ещё могут быть ☺ Собственно, именно из-за таких случаев они и сделаны необязательными. Многие программисты вообще привычны к понятию «Ensure file ends on trailing EOL marker», для них это особенно актуально.

Не в сети

Подвал раздела