Тема: Отображение нескольких изображений хранящихся в БД

Здравствуйте ,подобную тему не нашел поэтому создаю новую.Если таковые есть можете перенаправить.
вопрос в следующем , долго мучался с выводом изображений из БД,наконец кое что получилось но не совсем то что нужно.
имеется файл photo2.php :

<?php
include('login.php');
$connection = mysql_connect ($db_host, $db_username, $db_password);
mysql_query("SET NAMES 'cp1251'");
if (!$connection) {
  die("ошибка подключения к базе данных: <br />".mysql_error());
}
$db_select = mysql_select_db($db_database);
if (!db_select) {
  die("невозможно выбрадь бд:<br />". mysql_error());
}
$result = mysql_query ("SELECT PHOTO_PRODUKCIYA FROM `produkciya` WHERE ID_PRODUKCIYA='".$_REQUEST['id']."'");
while ($result_row=mysql_fetch_array($result, MYSQL_ASSOC)){
header("Content-type: image/jpeg");
echo $result_row['PHOTO_PRODUKCIYA'];
}
?>

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

<?php
include('login.php');
$connection = mysql_connect ($db_host, $db_username, $db_password);
mysql_query("SET NAMES 'cp1251'");
if (!$connection) {
  die("ошибка подключения к базе данных: <br />".mysql_error());
}
$db_select = mysql_select_db($db_database);
if (!db_select) {
  die("невозможно выбрадь бд:<br />". mysql_error());
}
$query = "SELECT NAIMENOVANIE_NAIMENOVANIE, NAZVANIE_PRODUKCIYA, OPISANIE_PRODUKCIYA, PHOTO_PRODUKCIYA, PROIZVODITEL_PROIZVODITEL, NAZVANIE_RAZMERYKPB
FROM naimenovanie, produkciya, proizvoditel, razmerykpb
WHERE produkciya.ID_PROIZVODITEL = proizvoditel.ID_PROIZVODITEL
AND produkciya.ID_NAIMENOVANIE = naimenovanie.ID_NAIMENOVANIE
AND produkciya.ID_RAZMERYKPB = razmerykpb.ID_RAZMERYKPB
LIMIT 0 , 30;";
$result = mysql_query($query);
if (!$result) {
  die("невозможно исполнить запрос к бд: <br />". mysql_error());
}
while ($result_row = mysql_fetch_array($result, MYSQL_ASSOC)){
echo '<img src="photo2.php?id=5" WIDTH=100 HEIGHT=100> <br />';
echo 'наименование: '.$result_row['NAIMENOVANIE_NAIMENOVANIE'].' <br />';
echo 'Название: '.$result_row['NAZVANIE_PRODUKCIYA'].' <br />';
echo 'Размеры: '.$result_row['NAZVANIE_RAZMERYKPB'].' <br />';
echo 'Производитель: '.$result_row['PROIZVODITEL_PROIZVODITEL'].' <br />';
echo 'Описание: '.$result_row['OPISANIE_PRODUKCIYA'].' <br />';
}
mysql_close($connection);
?>

этот скрипт является частью страницы весь текст выкладывать смысла не имеет.
при выводе на странице все данные отображаются как нужно кроме фото если поставить номер ID то показывает картинку соответсвующую ID если не ставить то показывает картинку с ID = 1.всего записей в базе 10 и все они отображаются,так же нужно что бы и картинки выводились в соответсвии с записями.подскажите как это осуществить
echo '<img src="photo2.php?id=5" WIDTH=100 HEIGHT=100> <br />';<<вписать заместо ID какое то значение или как?

Учусь у всех, не подрожаю никому.

2

Re: Отображение нескольких изображений хранящихся в БД

Подставьте вместо 5 идентификатор из таблицы PHOTO_PRODUKCIYA. Вроде вы все правильно делаете. В чем собственно трудность возникала?

clone-future сказал:

echo '<img src="photo2.php?id=5" WIDTH=100 HEIGHT=100> <br />';

3

Re: Отображение нескольких изображений хранящихся в БД

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

Учусь у всех, не подрожаю никому.

4

Re: Отображение нескольких изображений хранящихся в БД

я наверно не понятно обьяснил.проблема в том что на странице отображается 10 записей с названием описанием и тд,но картинка для всех одинаковая всегда отображается.либо соответсвующая заданамо номеру id, либо,если не задавать номер id, первую картинку (id которой равен 1).

Учусь у всех, не подрожаю никому.

5

Re: Отображение нескольких изображений хранящихся в БД

photo2.php?id=5 - Красненькое идет сюда:
$result = mysql_query ("SELECT PHOTO_PRODUKCIYA FROM `produkciya` WHERE ID_PRODUKCIYA='".$_REQUEST['id']."'");

Соответственно картинка и выводимая запись товара (название, размеры и т. д.) должны быть связаны. Как вы эту связь сделали я по коду не вижу, но если она есть, то вывести идентификаторы картинок будет не сложно.

6 (изменено: clone-future, 2010-05-29 00:35:44)

Re: Отображение нескольких изображений хранящихся в БД

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

Учусь у всех, не подрожаю никому.

7

Re: Отображение нескольких изображений хранящихся в БД

В запросе добавляем выборку поля ID_PRODUKCIYA.

$query = "SELECT NAIMENOVANIE_NAIMENOVANIE, NAZVANIE_PRODUKCIYA, OPISANIE_PRODUKCIYA, PHOTO_PRODUKCIYA, PROIZVODITEL_PROIZVODITEL, NAZVANIE_RAZMERYKPB, ID_PRODUKCIYA
FROM naimenovanie, produkciya, proizvoditel, razmerykpb
WHERE produkciya.ID_PROIZVODITEL = proizvoditel.ID_PROIZVODITEL
AND produkciya.ID_NAIMENOVANIE = naimenovanie.ID_NAIMENOVANIE
AND produkciya.ID_RAZMERYKPB = razmerykpb.ID_RAZMERYKPB
LIMIT 0 , 30";

При формировании ссылки на картинку, добавляем идентификатор картинки.

echo '<img src="photo2.php?id=' . $result_row['ID_PRODUKCIYA'] . '" WIDTH=100 HEIGHT=100> <br />';

8

Re: Отображение нескольких изображений хранящихся в БД

СПАСИБО ОГРОМНОЕ
я чуть от радости не расплакался=)))

Учусь у всех, не подрожаю никому.