Возможно ли отправить в бд через sql запрос в формате BLOB, heic изображения?
у меня есть кроссплатформенный сайт на php, так вот и юзеры после регистрации заполняют свои профили, и ставят Аватарки(обязательно), так вот в longblob летят картинки в jpg, jpeg, png формате, и если подумать о юзерах, которые с мобилки, допустим у них iOS система и при съёмке картинки сохраняются в формате heic, а при отправке в бд, происходит две вещи, на выбор так скажем, либо картинка не прилетает в бд(пусто )и отображается placeholder image либо прилетает но так же отображается placeholder image, так вот может есть какие то способы, и кстати, если насчёт интегрированных конвертерах при загрузке картинок, тоже задумывался, но мне не надо сохранять файлы в папке даже временные все должно лететь в блоб
Дополнительно:
ну бери что-то типа https://github.com/MaestroError/php-heic-to-jpg и коевертируй
Ответы:
Самое отвратительное из известных решений. В БД храним путь к файлу и любые мета данные. Файл лежит в файловой системе. Там его и конвертируем в любой удобный формат и разрешение. Никаких полумер. Картинкам в БД не место.
- я сделал так, потому что картинки при попытке сохранить в папке допустим uploads летят в папку не ospanel/domains/project а в ospanel/userdata
- Bvivg, проблема XY. Вот вы сами и нашли источник проблемы. Вы уже на полпути к решению.:)
- Bvivg,
я сделал так, потому что картинки при попытке сохранить в папке допустим uploads летят в папку не ospanel/domains/project а в ospanel/userdata
Ахренеть решение. "Я не нашел хлеба, по этому намазал паштет на торт"...
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Да, возможно отправить heic изображения в базу данных через SQL запрос в формате BLOB. HEIC (High Efficiency Image Format) - это формат изображения, который обеспечивает более эффективное сжатие и качество изображения, чем JPEG.
Для того чтобы отправить heic изображение в базу данных, вам необходимо сначала прочитать файл изображения и преобразовать его в бинарные данные, которые можно сохранить в столбец типа BLOB в таблице базы данных.
Пример SQL запроса для отправки heic изображения в базу данных:
INSERT INTO images_table (image_blob) VALUES (LOAD_FILE('path/to/your/image.heic'));
Где `images_table` - название таблицы, в которую вы хотите сохранить изображение, `image_blob` - название столбца типа BLOB, а `'path/to/your/image.heic'` - путь к вашему heic изображению.
Не забудьте, что перед выполнением этого SQL запроса вам нужно убедиться, что ваше изображение находится в подходящем формате и что ваша база данных поддерживает хранение BLOB данных.
Также рекомендуется использовать подготовленные запросы для безопасной передачи данных в базу данных, особенно если вы получаете путь к файлу из внешнего источника.