IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.
Модератор: kdv
-
starling13
- Сообщения: 8
- Зарегистрирован: 02 мар 2005, 14:56
Сообщение
starling13 » 20 мар 2005, 23:32
Необходимо выводить на страницу текст, хранящийся в поле BLOB.
Вот такая штука дала ерунду:
Код: Выделить всё
while ($row = ibase_fetch_object($db_qry_rslti))
{
print $row->FB_BLOB_SBTYP_TEXT_FLD;
}
Чего она вернула, я не понял - но это не зависело от содержимого поля - может указатель, но интересно куда?
Возможно ли вообще работать с BLOB полями IB/FB функциями php_ibase?
Огромное спасибо всем, кто ответит.
-
DSKalugin
- Сообщения: 212
- Зарегистрирован: 27 окт 2004, 13:39
Сообщение
DSKalugin » 21 мар 2005, 15:44
конечно можно, для этого куча функций. Цитирую
base_blob_add -- Add data into a newly created blob
ibase_blob_cancel -- Cancel creating blob
ibase_blob_close -- Close blob
ibase_blob_create -- Create a new blob for adding data
ibase_blob_echo -- Output blob contents to browser
ibase_blob_get -- Get len bytes data from open blob
ibase_blob_import -- Create blob, copy file in it, and close it
ibase_blob_info -- Return blob length and other useful info
ibase_blob_open -- Open blob for retrieving data parts
попробуй ibase_blob_echo
контролируй выводимый формат с помощью заголовков протокола, он должен соответствовать формату в блобе
для текста Header("Content-Type : text/html")
для картинок *.png - Header("Content-Type :image/png")
-
Сергей
- Сообщения: 13
- Зарегистрирован: 10 ноя 2004, 10:35
Сообщение
Сергей » 23 мар 2005, 19:19
starling13 писал(а):Необходимо выводить на страницу текст, хранящийся в поле BLOB.
Возможно ли вообще работать с BLOB полями IB/FB функциями php_ibase?
Работать с BLOB полями возможно. Твой пример должен быть примерно следующим.
Код: Выделить всё
while ($row = ibase_fetch_object($db_qry_rslti)) {
$blob = ibase_blob_open($row->FB_BLOB_SBTYP_TEXT_FLD);
$info = ibase_blob_info($row->FB_BLOB_SBTYP_TEXT_FLD);
print = ibase_blob_get($blob, $info[0]);
ibase_blob_close($blob);
}
-
starling13
- Сообщения: 8
- Зарегистрирован: 02 мар 2005, 14:56
Сообщение
starling13 » 01 апр 2005, 23:43
Действительно, имеется богатый набор функций. В заблуждение ввел help
к PHP Editor 1.5.
Даже не знаю, к какой версии он относится, но там описана треть функций php_ibase или ещё меньше.