Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Сохранение изображения

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Budulianin
Отправлено: 20 Октября, 2010 - 20:40:45
Post Id



Частый гость


Покинул форум
Сообщений всего: 132
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




Всем привет. Подскажите как правильно написать скрипт чтобы пользователь мог сохранить картинку. У меня форма с кнопкой, нажимаешь кнопку и должно выходить окно предлагающее сохранить картинку на диске пользователя.


CODE (html):
скопировать код в буфер обмена
  1.  
  2. <form >
  3.    <input type="button" value="Сохранить" align="absmiddle"            onclick="location.href='SaveFile.php' "     />
  4.             </form>
  5.  


SaveFile.php:

PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3.  
  4. header('Content-type: image/jpeg');
  5.  
  6. header('Content-Disposition: attachment; filename="downloaded.jpeg"');
  7.  
  8. readfile('Content/Girls/1.jpeg');
  9.  
  10. ?>
  11.  


При таком коде браузер выводит картинку в бинарном типе(текстом)
 
 Top
OrmaJever Модератор
Отправлено: 20 Октября, 2010 - 20:44:28
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




пробовал с изобрадением .png и у меня всё работает. Однако


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Budulianin
Отправлено: 20 Октября, 2010 - 20:55:15
Post Id



Частый гость


Покинул форум
Сообщений всего: 132
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




OrmaJever пишет:
пробовал с изобрадением .png и у меня всё работает. Однако


У меня сначала ошибки выводит

Warning: Cannot modify header information - headers already sent by (output started at W:\home\Kartinos.ru\WWW\SaveFile.php:1) in W:\home\Kartinos.ru\WWW\SaveFile.php on line 7

Warning: Cannot modify header information - headers already sent by (output started at W:\home\Kartinos.ru\WWW\SaveFile.php:1) in W:\home\Kartinos.ru\WWW\SaveFile.php on line 9

потом бинарный код
 
 Top
OrmaJever Модератор
Отправлено: 20 Октября, 2010 - 21:09:56
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




перед функциями header() есть echo или print ?


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Budulianin
Отправлено: 20 Октября, 2010 - 21:12:04
Post Id



Частый гость


Покинул форум
Сообщений всего: 132
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




OrmaJever пишет:
перед функциями header() есть echo или print ?


Нет таких банальных ошибок нет

Я же написал код PHP
 
 Top
OrmaJever Модератор
Отправлено: 20 Октября, 2010 - 21:16:36
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




если это весь код файла
Budulianin пишет:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. header('Content-type: image/jpeg');
  4.  
  5. header('Content-Disposition: attachment; filename="downloaded.jpeg"');
  6.  
  7. readfile('Content/Girls/1.jpeg');
  8.  
  9. ?>
  10.  

то скорее всего php стоит криво. Попробуй переустановить.
У меня была раз проблема с header(). На локалхосте скрипт нормально работал, а на хосте были подобные ошибки. Исправилосьтолькокогда они обновили php


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
DeepVarvar Супермодератор
Отправлено: 20 Октября, 2010 - 22:22:55
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




OrmaJever так у него на локалке ошибки (вон по пути видно шо эт винда и "шляпник"), и скорее всего БОМ-символы там...
 
 Top
Budulianin
Отправлено: 21 Октября, 2010 - 05:27:02
Post Id



Частый гость


Покинул форум
Сообщений всего: 132
Дата рег-ции: Окт. 2010  


Помог: 0 раз(а)




DeepVarvar пишет:
OrmaJever так у него на локалке ошибки (вон по пути видно шо эт винда и "шляпник"), и скорее всего БОМ-символы там...


Да BOM как всегда подвел....

Но все равно выводил символы

Переустановил денвер стало нормально
 
 Top
JustUserR
Отправлено: 21 Октября, 2010 - 08:03:19
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




Budulianin пишет:
SaveFile.php
В качестве дополнительного варианта реализации сохранения файла без его обработки в браузере можно использовать вывод HTTP-заголовка Content-type: application/octet-stream - в результате чего браузер произведет вывод предложения пользователю по сохранению файла и в дальнейшем ОС будет распознавать MIME-тип по системному расширению


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB