Извлечение поля BLOB из db2 AS/400 с использованием библиотеки PHP ODBC

Мне нужно получить некоторые изображения, сохраненные в поле BLOB-объектов таблицы db400. Я пытаюсь с библиотекой PHP ODBC, это пример кода:

    //connect to database 
    if(!$conn = odbc_connect($DNS, $user, $password)){
        exit("Error");
    }

    $sql = "SELECT TSMIME, TSIMG 
            FROM SVMAGDAT.DFW3S00F 
            WHERE TSIDMO=17 and TSPRMO=0";
    $result = odbc_exec($conn, $sql);

    $type=$lob="";
    if ($result) {                            
        odbc_longreadlen($result, 5242880);//5MB      
        odbc_binmode($result,ODBC_BINMODE_CONVERT);

        $type = odbc_result($result, "TSMIME");
        $lob = odbc_result($result, "TSIMG");
    }

    echo "<img src=\"data:$type;base64,$lob\" >";  

Изображения сохраняются в кодировке base64 и по его запросу я получаю только одну строку. Я попытался изменить odbc_longreadlen и odbc_binmode безрезультатно.

В этой конфигурации переменная $lob пуста, а $type установлен правильно.

Если я установил для odbc_binmode значение ODBC_BINMODE_PASSTHRU, я не смогу увидеть никаких результатов, потому что браузер каждый раз вылетает.

Любое предложение?

Спасибо

0 ответов

Другие вопросы по тегам