Как можно вывести на страницу изображение с описанием изображения из БД
у меня есть код для вывода описания из БД на страницу под фото, но выводит одно и тоже описание под каждое фото. попробовал через ид, но у меня постоянно выдает ошибку и не получается вывести. подскажите, как можно этот код подредактировать или что использовать лучше?
$dbh = new mysqli("127.0.0.1", "root", "", "ngg");
if(mysqli_connect_errno())
{
exit("Ошибка подключения к базе данных MySQL: Сервер база данных не доступен!<br>
Проверте параметры подключения к базе данных.");
}
$text = "SELECT description from binary_data";
$result = $dbh->query($text);
if(!$result) exit("Ошибка выполнения SQL запроса!");
$row = $result->fetch_array();
А вывожу на странице вот так
<?php echo $row['description']; ?>
Ответы (1 шт):
Автор решения: artes
→ Ссылка
Может быть кому то будет полезно решение которое я нашел для этого случая.
<?php
$dbh = new mysqli("localhost", "root", "", "ngg");
if(mysqli_connect_errno())
{
exit("Ошибка подключения к базе данных MySQL: Сервер база данных не доступен!<br>
Проверте параметры подключения к базе данных.");
}
$text = "SELECT * FROM binary_data";
$result = $dbh->query($text);
if(!$result) exit("Ошибка выполнения SQL запроса!");
if($result){
$rows = mysqli_num_rows($result);
for ($j = 0; $j < $rows; ++$j){
$row = $result->fetch_array();
$description = $row['description'];
echo "<li>";
echo "<a href='#'>";
for ($i = 0; $i < 1; ++$i) echo "<img src='getdata.php?id=$j' data-large='getdata.php?id=$j' alt='image[$j]' data-description='$description'/>";
echo "</a>";
echo "</li>";
}
} ?>
так же код со страницы getdata.php
<?php
if(!preg_match("|^[\d]*$|",$_GET['id'])) exit();
// подключение к базе данных
// (возможно, вам придется настроить имя хоста, имя пользователя и пароль)
$dbh = new mysqli("localhost", "root", "", "ngg");
if(mysqli_connect_errno())
{
exit("Ошибка подключения к базе данных MySQL: Сервер база данных не доступен!<br>
Проверте параметры подключения к базе данных.");
}
$query = "SELECT bin_data,filetype from binary_data WHERE id=".$_GET['id'];
$result = $dbh->query($query);
if(!$result) exit("Ошибка выполнения SQL запроса!");
$row = $result->fetch_array();
Header( "Content-type: ".$row['filetype']."");
echo $row['bin_data'];
?>