• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Картинка В Mysql

  • Автор темы Автор темы AbrakadabrA
  • Дата начала Дата начала
A

AbrakadabrA

Доброго времени суток.
Помогите пожалуйста с проблемой. В базе данных есть поле типа BLOB, в нем находится картинка.
Подскажите, как мне ее вытащить на страницу. Додумался только до этого
Код:
echo "<img src = '".$array['image']."'/>";
но в этом случае выходят какие то крякозябры. Ответа на свой вопрос на форуме не нашел, в программировании новичок. Буду рад любой помощи...
 
Создай image.php, в нём напиши вывод поля БД.
Как то так:
PHP:
$id = $_POST['id']; // не забудь отфильтровать

$query = mysql_query("SELECT `image` FROM `table` WHERE `id`=$id LIMIT 1");

while ($row = mysql_fetch_array($query)) 
{ echo $row['image']; }
А потом, когда захочешь его на странице показать, делаешь так:
HTML:
<img src='image.php?id=1'/>
 
:) вот уж действительно как-то так...
а нечего, что вы в файле принимаете постом, а закинуть пытаетесь гетом?
а цикл вам вообще зачем? вы же лимит поставили, приймите сразу ассоциативным, не плодя индексированый массив

PHP:
if(isset($_GET['id'])) { $id = $_GET['id']; 
if(!preg_match("|^[\d]*$|", $id)) { unset($id); exit; }
} else { exit; }

$query = mysql_query("SELECT `image` FROM `table` WHERE `id`='$id' LIMIT 1");
$row = mysql_fetch_assoc($query);
echo $row['image'];

если уж так... только не сильно понятно, что там выводить, оно же эхом попытаеться вывести на страницу, ту кракозяблю, что сидит в базе? (просто не занимался запихиванием картинок в базу)
походу, ему нужно создавать временый файл с расширением картинки, записывать туда информацию с базы и тогда будет картинка, но в итоге вообще бред получаеться)))
 
а нечего, что вы в файле принимаете постом, а закинуть пытаетесь гетом?
это потому что учитель двоечник.

Добавлено: и ваще пора его забанить
 
Возникла та же проблема.

А как лучше хранить изображение в Базе MySQL, чтобы потом без проблем вытащить ее?? :)
 
А как лучше хранить изображение в Базе MySQL, чтобы потом без проблем вытащить ее??

Именем файла в текстовом поле.
Хранение и извлечение двоичного представлениякартинки из поля в БД, подготовка его для вывода - в чем выигрыш от этих накладных расходов?
 
соглашусь. изображения храните на сервере, а в бд - путь к файлу.
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab