powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Вывод изображения на страницу, CGI-скрипт
17 сообщений из 17, страница 1 из 1
Вывод изображения на страницу, CGI-скрипт
    #34571022
vpanasenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте! Хотелось бы узнать, возможно ли ВСТРОИТЬ в страницу изображение? Я с HTML на "вы", в Сети нашел толко вариант для показа изображения в виде тегов IMG+SRC=URL, т.е. указывается URL на внешний файл. Мне нужно выбрать из таблицы БД данные, в том числе графику, и показать. Из найденного в Интернете, получается, что кроме как через внешний файл не получится.. Илия не прав ?
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34571105
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно, через серверный скрипт. ASP или PHP.
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34571256
vasa_c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторвозможно ли ВСТРОИТЬ в страницу изображение?
Нет
авторМожно, через серверный скрипт. ASP или PHP.
Нельзя
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34571550
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vasa_c , ты не прав.
Код: plaintext
<img src="GetImg.asp?ImgID=666">

Пример GetImg.asp:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
<%
Dim cn, rs
set cn = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")
cn.Open "строка подключения"
rs.Open "select Image from Table where ImgID="  & Request.QueryString("ImgID"), cn
Response.contentType = "image/gif" 'или image/jpeg
Response.BinaryWrite rs("Image").Value
%>
Да и "встроить" в html можно, только с какими-то ограничениями и не помню, где видел пример, давно это было.
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34572239
vpanasenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторМожно, через серверный скрипт. ASP или PHP. я спрашивал через CGI... Написан скрипт на Delphi, в принципе переделал ваш код с VB... но изображенимя так и не отображаются..
Т.е. сделал что типа <img src="GetImg.EXE?ImgID=666">
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34572301
LINUXER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vpanasenko авторМожно, через серверный скрипт. ASP или PHP. я спрашивал через CGI... Написан скрипт на Delphi, в принципе переделал ваш код с VB... но изображенимя так и не отображаются..
Т.е. сделал что типа <img src="GetImg.EXE?ImgID=666">
хм а сервер-то работает?
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34572377
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может рисунок jpeg, а хедер - gif или наоборот?
Может по запросу GetImg.EXE?ImgID=666 выводится что-то еще, кроме массива картинки?

Можно добавить перед BinaryWrite Response.Buffer = true, а после - Response.Flush.
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34572387
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А чем asp не угодил? Можно же комбинировать скрипты. У меня например на одном сайте веселая смесь asp и aspx. И ничего, работает.
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34572404
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AntonariyМожет рисунок jpeg, а хедер - gif или наоборот?
Может по запросу GetImg.EXE?ImgID=666 выводится что-то еще, кроме массива картинки?

Можно добавить перед BinaryWrite Response.Buffer = true, а после - Response.Flush.А еще в самом начале добавить Response.Clear.
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34573029
vpanasenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот код обработчика. Я тут пытаюсь записать в файл-поток(для проверки, доходит сюда обрабоатка или нет). В файло ничего не пишеться.:-(
Код: plaintext
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.
procedure TWebModule1.WebModule1WebActionItem1Action(Sender: TObject;
  Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
var
 S : TFileStream;
begin
    if Request.ContentFields.Count >  0  then
     begin
        Response.ContentType := 'image/jpeg';
        {Tbl.Filter := 'Name='+QuotedStr(Request.QueryFields.ValueFromIndex[ 0 ]);
        Tbl.Filtered := True;}
        Q.Close;
        Q.ParamByName('NAME').AsString := Request.ContentFields.ValueFromIndex[ 0 ];
        Q.Open;
        S := TFileStream.Create('c:\stream.str', fmCreate);
        (Q.FieldByName('BMP')as TBlobField).SaveToStream(S);
        Response.ContentStream := S;
        S.Free;
     end
     else
      if Request.QueryFields.Count >  0  then
       begin
          Response.ContentType := 'image/jpeg';
          {Tbl.Filter := 'Name='+QuotedStr(Request.QueryFields.ValueFromIndex[ 0 ]);
          Tbl.Filtered := True;}
          Q.Close;
          Q.ParamByName('NAME').AsString := Request.QueryFields.ValueFromIndex[ 0 ];
          Q.Open;
          S := TFileStream.Create('c:\stream2.str', fmCreate);
          (Q.FieldByName('BMP')as TBlobField).SaveToStream(S);
          Response.ContentStream := S;
          S.Free;
       end;
end;

Да, веб-сервер работает..:-)
Таблица для отображения - DBDEMOS, animals.dbf.. там, кончено, BMP-картинки, но жобаивл еще одну запись JPEG...
Вот текст странички(если так можно выразиться об ЭТОМ :-) )
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
<HTML>
<form method="POST" action="Project2.exe">
<HEAD>
<TITLE> ПРИМЕР №  1 </TITLE>
</HEAD>
<BODY>
<CENTER>
<TABLE>
<INPUT TYPE="TEXT" NAME="KEY_FIELD">
</TABLE>
<TABLE>
<INPUT TYPE=SUBMIT VALUE="Запрос">
</TABLE>
<BR>
<img src="Project2.exe?NAME=1">
<!--img src="c:\Изображение_отсканировано_15_05_2007_в_14_35.jpg"-->
</CENTER>
</BODY>
</form>
</HTML>
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34573073
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Response.ContentStream - это что такое? В дельфях свои серверные объекты? Или это не IIS?
Промежуточное сохранение в файл зачем нужно? И что такое Q?
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34573082
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос про файло снимаю)) Беспокоит Q.
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34573107
vpanasenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AntonariyResponse.ContentStream - это что такое? В дельфях свои серверные объекты? Или это не IIS?
Промежуточное сохранение в файл зачем нужно? И что такое Q?
Вот из помощи:
авторSpecifies the stream object for writing the contents of the HTTP response message to the web client.

Delphi syntax:

property ContentStream: TStream;

C++ syntax:

__property Classes::TStream* ContentStream = {read=FContentStream, write=SetContentStream};

Description

Use ContentStream to set the contents of the HTTP response message to a value that can be written from a stream. ContentStream allows the response object to write its contents directly from a stream.

The stream specified by ContentStream can access a string of HTML commands, the contents of a BLOB database field, or any MIME content type.
Note: ContentStream supersedes the Content property. If both Content and ContentStream are set, the web client is sent the value of the ContentStream, not the value of the Content property.
Т.е. для работы с BLOB полями тоже...В файловый поток я записываю для проверки, выполняется ли код или нет. Но файлы не создаются, значит код не выполняется.. Либо (мне сейчас так показалось) я "гоню" и CGI возможно использовать ТОЛЬКО для <form ... action="CGI"> ? На счет ASP... Я просто веб-программированием никогда не занимался. Буквально на той неделе "приспичило"...
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34573125
vpanasenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AntonariyВопрос про файло снимаю)) Беспокоит Q.
Это объект TQuery - компонент для доступа к данным через БДЕ, использую сиквел.. и все.. я просто делаю выборку
select BMP from animals where NAME=:NAME(это параметр, которому и присваивается(должно!) значение "1")
BMP - это БЛОБ с картинками...
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34577217
c_r_a_s_h
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Файл GetImg.pl:

#!/usr/bin/perl

use CGI;
use img;

print "Content-type: image/gif\n\n";
print get_img($ENV{QUERY_STRING});

файл img.pm:

sub get_img{
тут код взятия бинарных данных
binmode STDOUT;
}

и того <img src="httt://www.site.ru/cgi-bin/GetImg.pl?123">
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34577280
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Та же хрень, вид сбоку. К CGI отношения не имеет.

vpanasenko
С дельфями не работал, не знаю, что им не нравится в данном случае. А эта процедура вообще выполняется?
...
Рейтинг: 0 / 0
Вывод изображения на страницу, CGI-скрипт
    #34578175
vpanasenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AntonariyТа же хрень, вид сбоку. К CGI отношения не имеет.

vpanasenko
С дельфями не работал, не знаю, что им не нравится в данном случае. А эта процедура вообще выполняется?
Вот в чем и проблема... Похоже, что нет. Т.к. файло не создается...
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Вывод изображения на страницу, CGI-скрипт
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]