Статьи,обзоры,справочники по PHP

Размещение бинарных файлов (картинок) в базе данных


Для помещеня бинарного файла в базу данных, надо...

1. создайте таблицу с полем BLOB

2. прочитайте данные, которые надо поместить в базу данных, в переменную $upload. Если это файл (картинка) на диске, то сделайте это так:

3. защитите переменную от опасных символов ("прослешьте переменную"):

... $upload=addslashes($upload); ...

4. загрузите переменную в базу данных:

... mysql_query("INSERT INTO () VALUES ('$upload')"); ?>

"Таблица" - имя таблицы, "поле" - название колонки в таблице типа BLOB, что были созданы при выполнении пункта 1. Разумеется, чтобы выполнить HTML запрос надо предварительно установить соединение с базой данных.

Для взятия бинарного файла из базы данных в браузере, надо...

Вы будете смеяться, но ничего особого не надо. Просто прочитайте ее как простую переемнную из базы данных. В переменную на языке ПХП можно упихать все, что надо. Правда, есть лимит памяти (будьте внимательны с переменными от 2 МБ), о котором надо помнить. Разумеется, лимит увеличить, но это тема не данной статьи.

Чтобы показать картинку их базы данных, надо...

Освоить пример 1 этой статьи, а вместо чтения из файла, взять переменную из базы данных, примерно вот так:

FROM WHERE ") or die("SQL ERROR in line ".__LINE__.", function mysql_query"); $image=mysql_result($res, , ); // берем переменную из б.д. header("Content-type: image/gif"); echo $image; ?>





Содержание раздела