Форумы портала PHP.SU » » Графика в PHP » Вывести изображение из базы

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

1. diodida - 22 Мая, 2011 - 20:19:50 - перейти к сообщению
есть база данных по авто. каждому авто соответствует своя картирка. после выбора машины, должна открываться страница с фото и ТХ

запрос
if ($i == 32) {$query2=mysql_fetch_row(mysql_query("select code from photo where ID_photo=".$label[32]));
header("Content-type: image/jpg"); // ошибку в этой строке выбивает
echo "<td>".$query2[0]."</td>";};

выводит

все ТХ и
Warning: Cannot modify header information - headers already sent by (output started at E:\Server\Apache2\htdocs\zapros.php:10) in E:\Server\Apache2\htdocs\zapros.php on line 129
яШяб"QaqЃ‘Ўр2±БСбс#r$BRb%‚’ўяЪ

помогите понять в чем проблема или как правильно вывести картинку
Заранее спасибо
2. maragon - 22 Мая, 2011 - 20:32:14 - перейти к сообщению
поспешил с ответом. щас подумаю.
3. diodida - 22 Мая, 2011 - 20:34:10 - перейти к сообщению
maragon пишет:
что за ужасный код) что за кмс? или самопис?

просто я не понимаю как вывести...
4. Champion - 22 Мая, 2011 - 20:38:12 - перейти к сообщению
Что за td такое? TD - это текст, картинка - это картинка. На странице не должно быть того и другого.
Вариант - <img src="script.php"> а script.php выводит одну картинку
5. ugin_root - 22 Мая, 2011 - 20:47:34 - перейти к сообщению
ты пытаешся вывести текст и картинку с заголовками картинки

так делать нельзя!

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. header("Content-type: image/jpg"); //
  3. if ($i == 32)
  4. {
  5.         $query2=mysql_fetch_row(mysql_query("select code from photo where ID_photo=".$label[32]));
  6.         echo $query2[0];
  7. };
  8. //никакого текста вместе с картинкой выводить нельзя!


заголовки доложны задаваться в самом начале файла, до вывода какой либо информации в браузер, заголовки отправляются после вывода первого символа и после этого добавить или изменить их нельзя!

если тебе нужно выводить и текст и картинки одновременно тогда тебе прейдётся сохранить картинку на диск и добавить в текст(!) ответа её url <img src="%URL%">
6. diodida - 22 Мая, 2011 - 20:47:39 - перейти к сообщению
Champion пишет:
<img src="script.php">

то есть надо прописать так
if ($i == 32) {$query2=mysql_fetch_row(mysql_query("select code from photo where ID_photo=".$label[32]));
echo "<img src='script.php'>";};
а что в script.php записывать.
Я просто только начала этим заниматься не совсем ориентируюсь
7. maragon - 22 Мая, 2011 - 20:51:32 - перейти к сообщению
а зачем все эти лишние условия и т.д.. Радость
8. diodida - 22 Мая, 2011 - 20:52:36 - перейти к сообщению
ugin_root пишет:
если тебе нужно выводить и текст и картинки одновременно тогда тебе прейдётся сохранить картинку на диск и добавить в текст(!) ответа её url <img src="%URL%">


не совсем поняла... мне надо картинка и текст можно подробнее
(Добавление)
maragon пишет:
а зачем все эти лишние условия и т.д..

какие?
9. ugin_root - 22 Мая, 2011 - 20:54:54 - перейти к сообщению
нет! то что хранится в переменной $query2[0] тебе нужно записать на диск в файл, а после этого используй этот файл как простую картинку. если нужно что-бы php скрипт отвечал готовой картинкой то в этом скрипте нельзя выводить ни одго символа, и заголовок естественно header("Content-type: image/jpg");

вот это и есть ваша картинка, укороченный вариант (или так она будит выглядеть если её открыть например в блакноте)
CODE (htmlphp):
скопировать код в буфер обмена
  1. яШяб"QaqЃ‘Ўр2±БСбс#r$BRb%‚’ўяЪ
10. EuGen - 22 Мая, 2011 - 20:56:33 - перейти к сообщению
0. Делаете script.php - скрипт, который выводит только картинку (с сответствующими заголовками, разумеется)
1. В обычном скрипте выводите текст как требуется
2. В месте, где нужна картинка, делаете просто <img src='script.php'>
11. maragon - 22 Мая, 2011 - 20:56:46 - перейти к сообщению
if ($i == 32)
".$label[32] - это шо? (там ид? число небось)
---
Давай поймем что ты хочешь.
вывести просто картинку из БД и под ней текст? либо текст на картинке? А?!
12. diodida - 22 Мая, 2011 - 20:57:33 - перейти к сообщению
ugin_root пишет:
нет! то что хранится в переменной $query2[0] тебе нужно записать на диск в файл, а после этого используй этот файл как простую картинку. если нужно что-бы php скрипт отвечал готовой картинкой то в этом скрипте нельзя выводить ни одго символа, и заголовок естественно header("Content-type: image/jpg");

то есть можно создать script.php который будет выводить картинку, в нем прописать заговолок и какая картинка?
13. ugin_root - 22 Мая, 2011 - 20:59:08 - перейти к сообщению
эту самую строку $query2[0] записываешь в файл назовём его "картинка.jpg", а вместо
echo "<td>".$query2[0]."</td>";
пишешь
echo "<td><img src='/картинка.jpg'></td>";
14. diodida - 22 Мая, 2011 - 21:02:31 - перейти к сообщению
ugin_root пишет:
эту самую строку $query2[0] записываешь в файл назовём его "картинка.jpg", а вместо
echo "<td>".$query2[0]."</td>";
пишешь
echo "<td><img src='/картинка.jpg'></td>";


а если из 450 штук?
15. ugin_root - 22 Мая, 2011 - 21:05:34 - перейти к сообщению
тогда
diodida
EuGen пишет:
0. Делаете script.php - скрипт, который выводит только картинку (с сответствующими заголовками, разумеется)
1. В обычном скрипте выводите текст как требуется
2. В месте, где нужна картинка, делаете просто <img src='script.php'>

 

Powered by ExBB FM 1.0 RC1