Отображение изображения, где путь изображения хранится в базе данных с использованием идентификатора,

Я пытаюсь отобразить изображения на веб-странице, где путь к изображению хранится в базе данных, а изображения хранятся на сервере. Но я не могу отобразить эти изображения, используя следующие коды, поэтому, пожалуйста, кто-нибудь поможет мне с этой проблемой, ..

<form method="post"  enctype="multipart/form-data" action="file_upload.php">
<table>

<?php

$dbhost = 'xxxxxxxx';
$dbuser = 'xxxxxxxxx';
$dbpass = 'xxxxxxxxxx';
$db_name = 'xxxxxxxxxx';
$tbl_name = 'xxxxxxxxxxx';$conn = mysql_connect($dbhost, $dbuser, $dbpass);

if(! $conn )
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("$db_name")or die("cannot select DB");

$path1 = mysql_query("select * from '$tbl_name' where id='1'");
$path2 = mysql_query("select * from '$tbl_name' where id='2'");
$path3 = mysql_query("select * from '$tbl_name' where id='3'");

echo '<tr><td><img src="$path1"></td>' ;
echo '<td><img src="$path2"></td>' ;
echo '<td><img src="$path3"></td></tr>' ;

?>

</table>
</form>

0

Решение

Несколько вещей, прежде чем мы начнем:

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

Код PHP

$dbhost = 'xxxxxxxx';
$dbuser = 'xxxxxxxxx';
$dbpass = 'xxxxxxxxxx';
$db_name = 'xxxxxxxxxx';
$tbl_name = 'xxxxxxxxxxx';$conn = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);

if (!$conn)
{
die('Could not connect: ' . mysqli_connect_error());
}

$result = mysqli_query($con, "SELECT * FROM `$tbl_name`");

while ($row = mysqli_fetch_array($result))
{
echo '<tr><td><img src="'.$row['image'].'"></td>' ;
}

Обратите внимание, как я сначала «получил» результаты запроса. Сначала запрос возвращает объект mysqli, который содержит все Результаты запроса возвращены. Они должны быть извлечены; метод, который я представляю, также широко используется в других примерах.

Также обратите внимание на то, как при обращении к таблице использовался символ обратной галочки вместо одинарных кавычек.

3

Другие решения

После выполнения запроса мы получим курсор набора результатов. Нам нужно повторить это, чтобы получить все строки.
Попробуйте приведенный ниже код, он должен работать.

$result = mysql_query("SELECT * FROM  '$tbl_name' WHERE id IN ( 1, 2, 3 ) ");

if (!$result) {
// show your respective error messages
}else{
while ($row = mysql_fetch_assoc($result)) {
echo '<tr><td><img src="'.$row['database_column_name'].'"></td>' ;
}
}
0

mysql_query (); имеет 2 аргумента.

аргумент 1: связь.
Аргумент 2: запрос.

это то, что я буду делать, если бы я был тобой:

$sql = "select * from `$tbl_name` where `id` between 1 and 3";
$path = mysql_query($conn, $sql);
while($row = mysqli_fetch_array($patht)) {
echo '<tr><td><img src="' . $row['name of colum'] . '"></td></tr>' ;
}
mysql_close($con);

Извините за мой плохой английский. я голландец

0
По вопросам рекламы [email protected]