| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: разработка для Web > Вывод изображений |
| Автор: Гость_Rusico 24.3.2005, 11:13 |
| Привет. Есть небольшой вопрос: у меня в базе хранятся изображения в виде строк(Blob), как мне вывести их в броузер. Пробовал так: my $dbh = dbConnect(); my $sql = "select value from Image where id=6 and cod=2"; my $row = $sth->fetchrow_array; print $row; не выхлодит.[/size][size=1] |
| Автор: korob2001 24.3.2005, 11:25 | ||
Никогда не хранил в базе изображения, попробуй пока так:
Но я не обещаю, что это сработает. Я пока в книгах пороюсь. |
| Автор: Russo 24.3.2005, 11:32 |
| так уже пробовал. Пробовал даже так: Записывал в базу не содержимое картинки, а массив байтов из неё, а потом переводил в char. Вообщето и в том и в другом случае он выводит белеберду, но не ту что надо, т.е. появляются знаки вопроса и квадратики, а еслибы он выводил "правильную белеберду", то появлялась бы картинка. Проверял[color=skyblue][/color] |
| Автор: korob2001 24.3.2005, 12:15 |
| Может проблема в заголовках??? |
| Автор: Russo 24.3.2005, 12:18 |
| Много чего перебробовал |
| Автор: korob2001 24.3.2005, 12:24 |
| Я вот думаю, может попробовать создать отдельный файл, который будет извлекать и выводить изображение. А в HTML коде просто прописывать так <img src="/cgi-bin/pic.pl?id=10">??? Так пробовал???? |
| Автор: Russo 24.3.2005, 12:33 |
| Дело не в этом. если прочитать файл картинки и сразу вывести данные из неё, то в браузере будет картинка. А <img...> попробовал: эффекта нет. |
| Автор: korob2001 24.3.2005, 13:12 |
| Как ты пишешь заголовок(header)??? |
| Автор: GoodBoy 24.3.2005, 13:38 |
| Russo А не проще держать картинку отдельно, а в базе просто ссылку на неё??? |
| Автор: korob2001 24.3.2005, 13:53 |
| Да и вообще даже в книгах не рекомндуют хранить изображения в базе. Инфы такой нигде нет, потому что это плохой способ хранения графики. И база как правило имеет ограничение на размер. |
| Автор: Phoinix 4.4.2005, 14:20 |
| Russo Во-первых header соответсвующий print "Content-type: image/gif;\n\n"; # это для gif Во-вторых: binmode STDOUT; |
| Автор: Sadok 5.4.2005, 08:35 | ||
Phoinix
Первая точка с запятой - лишняя |
| Автор: Phoinix 5.4.2005, 14:15 | ||
Sadok
Ты посты набираешь или придираешься к фразам? Эта "точка с запятой" погоды на самом деле не делает... |
| Автор: korob2001 5.4.2005, 16:59 |
| Sadok, Phoinix - да ладно вам, не сcорьтесь. |
| Автор: Sadok 6.4.2005, 08:41 | ||
Phoinix
Я синтаксис проверяю. Сходи на http://mysql.ru/ - там все обсосано уже давно. |