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
Форумы портала PHP.SU :: Версия для печати :: Кнопка на скачивание картинки по прямой ссылки
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Кнопка на скачивание картинки по прямой ссылки

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

1. DemonXT - 02 Октября, 2012 - 13:02:03 - перейти к сообщению
Здравствуйте уважаемые форумчане!

Я хочу сделать кнопку, при нажатию на которую браузер выведет диалог на сохранение картинки. Что бы я не делал браузер открывает подставляемую ему картинку. Но мне это не подходит! Огорчение
Надеюсь Вы мне поможете с php-скриптом, обрабатывал запросы, и давал ссылку на скачивание картинки. Я в PHP не силён, поэтому надеюсь на Вашу помошь.

P.S.
Ссылки на картинки внешние, этому правки .htaccess - файла в каталоге с картинками работать не будет.

С Уважением Александр.
3. DemonXT - 02 Октября, 2012 - 20:36:30 - перейти к сообщению
imya
Спасибо за ссылку. Такое решения на просторах интернета мне не попадалась.
Как я уже писал выше, я не силён в php. Огорчение
Ума хватило только собрать такой скрипт:
download.php
Спойлер (Отобразить)


На сайте выглядит так:
CODE (html):
скопировать код в буфер обмена
  1. <input type="button" class="img"  value="Скачать картинку..." onclick="location.href='download.php?file=http://www.lxphoto.ru/components/com_datsogallery/img_pictures/A03FF9472C6D-9.jpg';"/>

или так
CODE (html):
скопировать код в буфер обмена
  1. <a href="download.php?file=http://www.lxphoto.ru/components/com_datsogallery/img_pictures/A03FF9472C6D-9.jpg">Скачать</a>

При нажатии получаю ошибку
Цитата:
Файл не найден http://www.lxphoto.ru/components/com_datsogallery/img_pictures/A03FF9472C6D-9.jpg

Полагаю, что из-за того, что ссылка внешняя. Поэтому убрал проверочную строку:
PHP:
скопировать код в буфер обмена
  1. if (!file_exists($filename)) die('Файл не найден ' . $filename);

Но без неё вообще ничего не выводится! А?!
Помогите разобраться.
4. imya - 03 Октября, 2012 - 14:25:53 - перейти к сообщению
Попробуй вместо $_GET['file'] написать $_POST['file'] так как картинки по гету не будут идти + в форме сделай enctype.
И попробуй в параметрах ф-ции замени $mimetype='application/octet-stream' на $mimetype='multiрart from/data'.
5. DemonXT - 03 Октября, 2012 - 17:59:02 - перейти к сообщению
Сделал вот такую форм:
CODE (html):
скопировать код в буфер обмена
  1. <form action="download.php" enctype="multipart/form-data" method="post">
  2. <input type="hidden" name="image" value="file=http://www.lxphoto.ru/components/com_datsogallery/img_pictures/A03FF9472C6D-9.jpg" />
  3. <input name="submit" type="submit" class="img"  value="Скачать картинку"/>
  4. </form>

но в ответ получаю только:
Цитата:
Ошибка - не передано имя файла для скачивания

 

Powered by ExBB FM 1.0 RC1