Как записать/вытащить рисунок из БД

Статус
В этой теме нельзя размещать новые ответы.

beosav

Новичок
Как записать/вытащить рисунок из БД

как записать, а потом вытащить рисунок из БД?, покажите пример плз, или ссылочку дайте.
Я так делаю:
1. Пишу рисунок в БД
PHP:
<?
$f=fopen("images.gif","rb"); // имя файла или картинки -- открыли файл на чтение
$upload=fread($f,filesize("images.gif")); // считали файл в переменную
fclose($f); // закрыли файл, можно опустить
$upload=addslashes($upload); //защитите переменную от опасных символов ("прослешьте переменную"):
$sql = "INSERT INTO <таблица>  (foto) VALUES ('$upload')";
$db->sql_query($sql);
?>
2. Вытаскиваю рисунок из БД
PHP:
<?
$sql = "SELECT * FROM <таблица> ";
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result)) {
$foto = $row[foto];

echo "<img src=\"image.php?image=$foto\">";
}
?>
3. image.php:
PHP:
<?php
  header("Content-type: image/gif");
  echo $image;
?>
Выводит вместо рисунка его «внутренности» , помогите решить проблему плз, как сделать так , чтобы выводился рисунок?
 

Гравицапа

elbirret elcno
2. Вытаскиваю рисунок из БД
PHP:
<?
$sql = "SELECT * FROM <таблица> ";
$result = $db->sql_query($sql);
while ($row = $db->sql_fetchrow($result)) {
$foto = $row[foto];

echo "<img src=\"image.php?image=$foto\">";
}
?>
Можешь вот этот кусок кода объяснить, особенно про echo... и переменную $foto?

-~{}~ 30.08.07 00:42:

3. image.php:

<?php
header("Content-type: image/gif");
echo $image;
?>
А вот в этом файле $image откуда появляется?
А зачем ты вообще решил хранить картинки в БД?
 

beosav

Новичок
про то что можно так сделать , прочитал тут
http://www.codenet.ru/webmast/php/Read-Binary.php

в image.php $image передаёться параметром
<img src=\"image.php?image=$foto\">

echo "<img src=\"image.php?image=$foto\">"; //этот кусочек в таблицу у меня входит, на HTML, просто целиком всё вставлять не стал
 

Гравицапа

elbirret elcno
beosav
Ты ответил не на все мои вопросы.
Что содержит переменная $foto и зачем ты её в ссылку запихал?
про то что можно так сделать , прочитал тут
Так сделать можно. Но в твоём случае не нужно. Не нужно пока ты сам точно не сможешь сказать зачем тебе оно надо.
 

beosav

Новичок
$foto = $row[foto]; //$foto - это сама картинка GIF, foto - поле типа BLOB
 

beosav

Новичок
PHP:
<? 
$sql = "SELECT * FROM <таблица> "; 
$result = $db->sql_query($sql); 
while ($row = $db->sql_fetchrow($result)) { 
$foto = $row[foto]; 

echo "<img src=\"image.php?image=$foto\">"; 
} 
?>
Можешь вот этот кусок кода объяснить, особенно про echo... и переменную $foto?
PHP:
$foto = $row[foto]; //вытаскиваю картинку из БД
echo "<img src=\"image.php?image=$foto\">"; //вывожу изображениу посредством image.php
// передаю в него параметром саму картинку  image.php?image=$foto
3. image.php:
PHP:
<?php
header("Content-type: image/gif");
echo $image;
?>
А вот в этом файле $image откуда появляется?
параметром передаёться
А зачем ты вообще решил хранить картинки в БД?
надо

-~{}~ 30.08.07 00:25:

разобрался, теперь возникла следующая проблема , картинки грузятся ч/з раз, например 1-я грузиться , 2-я, 3-я - нет , после обнавления страницы может 1-я пропасть, 2-я, 3-я - появиться., В чём может быть проблема ?
 

Фанат

oncle terrible
Команда форума
Тема закрыта. Учитесь пользоваться поиском.

Прежде чем задавать вопрос - используйте поиск по форуму и FAQ:
На нахождение готового ответа на свой вопрос Вы потратите меньше своего и чужого времени, чем на создание новой темы.

Поиск по форуму

http://phpclub.ru/faq/
http://phpclub.ru/detail/
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху