HTML / PHP / ODBC / PGSQL Base64 Изображение не отображается полностью

В настоящее время я испытываю странную проблему, когда я конвертировал веб-приложение в ODBC с использованием PostgreSQL (из MySQL с PHP mysqli-connector).

Я заметил, что изображения, которые хранятся в виде bytea в базе данных PostgreSQL и брошенные в PHP функции base64 не отображаются правильно. В какой-то момент он обрезается через пару строк. Это отрезано со всеми bytea Данные изображения, которые хранятся в нашей базе данных, у нас есть это для логотипов и подписей.

Если вы проверите тег img с помощью инспектора браузера, вы увидите (по крайней мере, в Chrome), что многие данные этого изображения отсутствуют.

Что я делаю SELECT * FROM table и затем в цикле for закодируйте изображение как base64:

$clients[$i]['logo'] = base64_encode($clients[$i]['image']);

$clients[$i]['image'] = this is the bytea in the database and

$clients[$i]['logo'] = this is the base64 String that I display in a Smarty template like this: data:image/png;base64,{$client.logo}

Я надеюсь, что вы можете помочь.

0

Решение

Решением является длина данных в файлах odbc.ini. Если длина ограничена, слишком длинные строки base64 будут обрезаны. Просто нужно увеличить размер.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]