Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.19;
Скачать: CL | DM;

Вниз

BLOB+HTML   Найти похожие ветки 

 
PEAKTOP ©   (2006-09-19 11:12) [0]

Доброе время суток, ув. мастера !
Есть таблица с БЛОБ-доменом, в котром лежит технический чертеж изделия в виде JPEG. Есть клиенский интерфейс к базе в виде клиентского ехе-файла, который, в общем-то, и наполняет эту таблицу. По логике задачи встал вопрос об ВЭБ-интерфейсе к базе в связи с тем, что цех териториально удален от конструкторского бюро и было принято решение использовать связку Apache+PHP+Firebird.
Вопрос, никто не подскажет, как "выдать" в HTML-страницу изображение из БЛОБ, как, например, они храняться в файлах DFM Delphi, или в файлах MHT. Т.е. перекодировать изображение в текст. Просто не хотелось бы заморачиваться с временными файлами на HTTP-сервере.


 
ANB ©   (2006-09-19 11:48) [1]


> Т.е. перекодировать изображение в текст.

распознавалку писать придется.


 
PEAKTOP ©   (2006-09-19 13:40) [2]

Спасибо, нашел уже сам.
Если кому интересно, то вот сырец, который покажет изображение из таблицы

CREATE TABLE TABL$R_TMC_BLOB(
 TMC_ID INTEGER NOT NULL FOREIGN KEY REFERENCES TABL$R_TMC(ID),
 BLOB_IMAGE BLOB SUB_TYPE 0 SEGMENT SIZE 4096
 );



 $firebird_database = "127.0.0.1:d:/database/DB.FDB";
 $firebird_username = "SYSDBA";
 $fireburd_userpwd  = "masterkey";

 $db_handle         = ibase_connect($firebird_database, $firebird_username, $fireburd_userpwd);
 if($db_handle != 0){
   $sql       = "SELECT * FROM TABL$R_TMC_BLOB TB WHERE (TB.TMC_ID=10028) ";
   $qr_handle = ibase_query($db_handle, $sql);
   if($qr_handle != 0){
     while ($record = ibase_fetch_object($qr_handle)) {
       $blob_data   = ibase_blob_info($record->BLOB_IMAGE);
       $blob_handle = ibase_blob_open($record->BLOB_IMAGE);
       $jpeg_src    = ibase_blob_get($blob_handle, $blob_data[0]);
       if($jpeg_src != ""){      
         header("Content-type: ".image_type_to_mime_type(IMAGETYPE_JPEG));
         echo $jpeg_src;
       }      
     }
     ibase_free_result($qr_handle);
   }else{
     echo "Cann\"t execute sql-query ".$sql;
   }
   ibase_close($db_handle);
 }else{
   echo "Cann\"t connect to database";
 }



Страницы: 1 вся ветка

Текущий архив: 2006.11.19;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.037 c
11-1139198605
sff
2006-02-06 07:03
2006.11.19
ppDelphi


6-1148193053
Maxim13
2006-05-21 10:30
2006.11.19
Подскажите как открыть доступ к определеной папке?


1-1160572979
guav
2006-10-11 17:22
2006.11.19
forward declaration для процедурных типов


3-1158398640
stfu
2006-09-16 13:24
2006.11.19
Проблема с загрузкой данных из MySQL


3-1158426208
Fostr
2006-09-16 21:03
2006.11.19
SQL - Update