[Ruby] Проблема с выводом графики из базы данных в CGI
Kachalov Anton
mouse at linux.ru.net
Mon Nov 25 12:54:25 MSK 2002
Ilya Palagin пишет:
> Kachalov Anton wrote:
> ...
> > а в логах апача что пишет?И еще - "Content-type" лучше выдавать
> Ошибок нет. На экране - пустое место вместо картинки.
>
> > средствами CGI, а не руками, тем более, данный заголовок не
> > соответствует спецификации - строка должна заканчиваться не "\n", а
> > "\r\n"
> Наверное, CGI здесь ни при чем, т.к. я просто выливаю содержимое файла
> на stdout, который в данный момент, надо полагать, должен быть направлен
> в вызывающий CGI (с перлом так и происходит). Скорее всего, проблема в
> stdout у ruby, почему-то ему не нравится направлять вывод в CGI.
>
> Если я напрямую вызываю скрипты, которые выводят картинки, из браузера,
> то перловый выводит изображение, а ruby предлагает
> сохранить файл с изображением (в смысле - появляется диалог Save File).
>
Вот скрипт, который железно показывает картинку.
Rgds,
Anton
--
ALTLinux Team
http://www.altlinux.ru
LRN Team
http://www.lrn.ru
FreeCraft Team
http://freecraft.sourceforge.net/
-------------- next part --------------
require "mysql"
require "cgi"
$CGI = CGI.new
MySQL = Mysql.connect('localhost','root','')
MySQL.select_db 'IVK'
id = $CGI.params['image'][0]
if id != ''
res = MySQL.query("SELECT body,type FROM images WHERE id = '#{id}'")
(body, type) = res.fetch_row
print $CGI.header('type'=>'image/'+type)
print body
end
More information about the Ruby
mailing list