Загрузка файла .ai (adobe illustrator) — файл, похоже, поврежден

#php #http-headers

#php #http-заголовки

Вопрос:

У меня есть этот код:

             $bmpblob = file_get_contents($image);
            header('Content-type: application/postscript');
            header('Content-Disposition: attachment; filename="'.$id1.'.ai"');
            echo $bmpblob;
  

Но когда я загружаю этот файл, он поврежден.

У меня есть аналогичный код для файлов .psd, и он работает:

             $bmpblob = file_get_contents($image);
            header('Content-type: image/psd');
            header('Content-Disposition: attachment; filename="'.$id1.'.psd"');
            echo $bmpblob;
  

Что я делаю не так?

Комментарии:

1. Хорошо, я выяснил, что вызвало повреждение изображения, поэтому считайте, что это решено.

Ответ №1:

Хорошо, я выяснил, в чем дело.

Когда я открыл файл, который я загружаю в Notepad , я заметил, что в конце файла у меня есть:

 <b>Notice</b>:  Undefined variable: im in <b>/home/rukia/gallery/application   /controllers/IndexController.php</b> 
on line <b>279</b><br /><br />
<b>Warning</b>:  imagedestroy(): supplied argument is not a valid Image resource 
in      <b>/home/rukia/gallery/application/controllers/IndexController.php</b>
 on line    <b>279</b><br />
  

Таким образом, файл был поврежден.

Странно, однако, что файлы .psd имели то же самое в конце, и они отлично работали 🙂