Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
jumbo1
1 / 1 / 0
Регистрация: 14.09.2014
Сообщений: 16
1

Fpassthru() Не идет выгрузка изображения

14.06.2015, 18:28. Просмотров 884. Ответов 13
Метки нет (Все метки)

Есть код:
PHP
1
2
3
4
5
6
7
8
9
10
11
  
 if(isset($_POST['subm'])){
     $path='/Applications/MAMP/htdocs/examp/images/black.png';
     $size=filesize($path);
     $file=fopen($path,'rb');
     header('Content-Type: image/png');
     header('Content-Length: '.$size);
     fpassthru($file);
     fclose($path);
     exit;
   }
Результат работы в приложенном изображении,почему так происходит?
0
Миниатюры
Fpassthru() Не идет выгрузка изображения  
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.06.2015, 18:28
Ответы с готовыми решениями:

Выгрузка изображения из Postgresql
Добрый день. Записываю изображение в базу данным способом try { ...

Выгрузка каталога товаров из 1С на сайт - изображения
здравствуйте. выгружаются изображения не для всех товаров (это наблюдается...

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

Не идет сигнал изображения в монитор. Вероятно вирус
Здравствуйте! Не знаю в какой раздел писать это сообщение. Если что,...

Идет звук, нет изображения. Кодеки устанавливал
Проблема следующая. В один прекрасный момент, а точнее после перекодировки...

13
ads
365 / 372 / 89
Регистрация: 01.12.2013
Сообщений: 1,629
14.06.2015, 21:37 2
Цитата Сообщение от jumbo1 Посмотреть сообщение
Результат работы в приложенном изображении,почему так происходит?
вы же ничего не написали в вопросе. где вывод картинки? в каком это контексте происходит?
0
pav1uxa
1857 / 1711 / 802
Регистрация: 23.01.2014
Сообщений: 6,082
Завершенные тесты: 1
14.06.2015, 22:09 3
Цитата Сообщение от jumbo1 Посмотреть сообщение
почему так происходит?
Потому что не должно быть никакого вывода (текста).

А у Вас он там точно есть.
0
jumbo1
1 / 1 / 0
Регистрация: 14.09.2014
Сообщений: 16
17.06.2015, 14:49  [ТС] 4
Цитата Сообщение от pav1uxa Посмотреть сообщение
Потому что не должно быть никакого вывода (текста).

А у Вас он там точно есть.
Вот код всего этого блока:
HTML5
1
2
3
4
5
<td class="1-bar">
            <h3>Чтение  файлов</h3>
   <form action="" method="post">
   <input type="submit" name="subm"  value="Download"/>
   </form>
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?php
 if(isset($_POST['subm'])){
     $path='/Applications/MAMP/htdocs/examp/images/black.png';
     $size=filesize($path);
     $file=fopen($path,'rb');
     header('Content-Type: image/png');
     header('Content-Length: '.$size);
     fpassthru($file);
     fclose($path);
     exit;
   }
?>
HTML5
1
</td>
Никакого вывода текста не используется.
0
jumbo1
1 / 1 / 0
Регистрация: 14.09.2014
Сообщений: 16
17.06.2015, 14:56  [ТС] 5
Такой же код только на чистой страничке - результат тот же.
0
Миниатюры
Fpassthru() Не идет выгрузка изображения   Fpassthru() Не идет выгрузка изображения  
pav1uxa
1857 / 1711 / 802
Регистрация: 23.01.2014
Сообщений: 6,082
Завершенные тесты: 1
17.06.2015, 19:03 6
Цитата Сообщение от jumbo1 Посмотреть сообщение
Никакого вывода текста не используется.
Вот вывод:
HTML5
1
2
3
4
5
<td class="1-bar">
            <h3>Чтение  файлов</h3>
   <form action="" method="post">
   <input type="submit" name="subm"  value="Download"/>
   </form>
Для того чтобы нормально отобразить картинку: ДО тега <?php и после тега ?> не должно быть ни одного символа, даже пробела.
0
jumbo1
1 / 1 / 0
Регистрация: 14.09.2014
Сообщений: 16
17.06.2015, 19:32  [ТС] 7
Цитата Сообщение от pav1uxa Посмотреть сообщение
Для того чтобы нормально отобразить картинку: ДО тега <?php и после тега ?> не должно быть ни одного символа, даже пробела.
Я не отобразить ее хочу, а выгрузить.
0
pav1uxa
1857 / 1711 / 802
Регистрация: 23.01.2014
Сообщений: 6,082
Завершенные тесты: 1
17.06.2015, 19:39 8
Цитата Сообщение от jumbo1 Посмотреть сообщение
Я не отобразить ее хочу, а выгрузить.
Не имеет значения.
0
jumbo1
1 / 1 / 0
Регистрация: 14.09.2014
Сообщений: 16
17.06.2015, 19:52  [ТС] 9
Цитата Сообщение от pav1uxa Посмотреть сообщение
Не имеет значения.
Во всяком случае я убрал символы до тега, даже проблемные, сценарий не сработал.
0
pav1uxa
1857 / 1711 / 802
Регистрация: 23.01.2014
Сообщений: 6,082
Завершенные тесты: 1
17.06.2015, 20:29 10
Цитата Сообщение от jumbo1 Посмотреть сообщение
Во всяком случае я убрал символы до тега, даже проблемные, сценарий не сработал.
покажите код файла целиком.
0
jumbo1
1 / 1 / 0
Регистрация: 14.09.2014
Сообщений: 16
21.06.2015, 16:17  [ТС] 11
PHPHTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<?php $title='File work';?>
<head>
<link type="text/css" rel="stylesheet" href="/examp/styles/examp.css" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title><?php echo $title;?></title>
</head>
 
<body> 
<?php include('header.php');?>
<?php
   if(isset($_POST['subm'])){
        $path='/Applications/MAMP/htdocs/examp/images/black.png';
        $file=fopen($path,'rb');
        header('Content-Type: image/png');
        header("Content-Length: ".filesize($path));
        fpassthru($file);
        fclose($file);
        exit;
   }
?>
<div class="front" id="mainpart" >
    <div class="enter" id="textarea">
        <p>Welcome to <?php if(isset($title))echo "$title";?> page</p>
    </div> 
    <table>
            <td class="1-bar">
                <h3>Чтение  файлов</h3>
                <form action="" method="post">
                     <input type="submit" name="subm"  value="Download"/>
                </form>
            </td>
            <td class="2-bar">
            </td>
         </table>
</div>
<?php include('footer.php');?>
</body>
</html>
0
pav1uxa
1857 / 1711 / 802
Регистрация: 23.01.2014
Сообщений: 6,082
Завершенные тесты: 1
21.06.2015, 16:55 12
jumbo1, Вы издеваетесь надо мной? Прочитайте вот это мое сообщение еще 30 раз:
Цитата Сообщение от pav1uxa Посмотреть сообщение
Для того чтобы нормально отобразить картинку: ДО тега <?php и после тега ?> не должно быть ни одного символа, даже пробела.
Таким методом скрипт может вывести ТОЛЬКО картинку и ничего больше. Если помимо картинки Вам нужно вывести еще что то, выводите картинку обычным способом - через тег <img>.

Ну или можно, например, в 1.php написать:
PHP
1
2
3
4
5
6
7
8
<?php
$path='/Applications/MAMP/htdocs/examp/images/black.png';
$file=fopen($path,'rb');
header('Content-Type: image/png');
header("Content-Length: ".filesize($path));
fpassthru($file);
fclose($file);
?>
А в файле index.php:
HTML5
1
<img src = "/1.php">
0
jumbo1
1 / 1 / 0
Регистрация: 14.09.2014
Сообщений: 16
21.06.2015, 16:56  [ТС] 13
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
if(isset($_POST['subm'])){
        $path='/Applications/MAMP/htdocs/examp/images/black.png';
        $file=fopen($path,'rb');
        header('Content-Type: image/png');
        header("Content-Length: ".filesize($path));
        fpassthru($file);
        fclose($file);
        exit;
   }
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<?php $title='File work';?>
<head>
<link type="text/css" rel="stylesheet" href="/examp/styles/examp.css" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title><?php echo $title;?></title>
</head>
 
<body> 
<?php include('header.php');?>
<div class="front" id="mainpart" >
    <div class="enter" id="textarea">
        <p>Welcome to <?php if(isset($title))echo "$title";?> page</p>
    </div> 
    <table>
            <td class="1-bar">
                <h3>Чтение  файлов</h3>
                <form action="" method="post">
                     <input type="submit" name="subm"  value="Download"/>
                </form>
            </td>
            <td class="2-bar">
            </td>
         </table>
</div>
<?php include('footer.php');?>
</body>
</html>
если, исключить любой вывод, то браузер открывает изображение, но не предлагает мне скачать его.
0
pav1uxa
1857 / 1711 / 802
Регистрация: 23.01.2014
Сообщений: 6,082
Завершенные тесты: 1
21.06.2015, 17:00 14
Лучший ответ Сообщение было отмечено jumbo1 как решение

Решение

Цитата Сообщение от jumbo1 Посмотреть сообщение
но не предлагает мне скачать его.
Если нужно отдать картинку пользователю на скачивание, добавьте заголовок Content-Disposition:
PHP
1
header('Content-Disposition: attachment; filename="black.png"');
1
21.06.2015, 17:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.06.2015, 17:00

Выгрузка изображения из MS SQL и неверный размер файла
Здравствуйте. Прошу помощи по порблеме считывания данных из поля image в sql...

При каждом включении идет автонастройка параметров изображения
При каждом включении компа,перед появлением логотипа виндовс,на мониторе каждый...

Создать анимационные графические изображения на тему "Снег идет"
Кто-нибудь может помочь с заданием?:resent: В среде Паскаль создать ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru