我是一名学生使用NetBeans使用HTML,PHP和SQLite创建非常基本的网页。到目前为止,一切都很好。我遇到的问题是图片没有显示在moviedetails.php
页面上。对于每个表条目,其他所有内容(包括titles
,ratings
和description
都可正常工作。 (我正在从数据库表中检索行。)这是我的代码:
(这对我来说很新,所以如果这是一个简单的错误,抱歉浪费你的时间:/)
的index.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<?php
$pdo = new PDO('sqlite:movies.db'); //Import SQLite database "movies.db" to a Var
$query = $pdo->query("SELECT * FROM movie");
while ($row = $query->fetch(PDO::FETCH_ASSOC)) {
//For each id number in db, echo a hyperlink containing that ID's title and
echo '<a href="moviedetails.php?id=' . htmlentities($row['id']) . '">' . htmlentities($row['title']) . '</a>';
echo '<br>';
}
?>
</body>
的 moviedetails.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<?php
$pdo = new PDO('sqlite:movies.db'); //Using movies.db
$query = $pdo->prepare("SELECT * FROM movie WHERE id=:id"); //Prepare this statement
$id = filter_input(INPUT_GET, 'id', FILTER_SANITIZE_NUMBER_INT); //GET INPUT from Variable 'id' and FILTER anything which isn't a number
$query->bindParam(':id', $id, PDO::PARAM_INT); //Bind :name 'id' to a $id variable
$query->execute(); //Execute the prepared statement
$row = $query->fetch(PDO::FETCH_ASSOC); //Fetch next row of results
//var_dump($row);
//display title, description and rating
echo '<h1>'.htmlentities($row['title']).'</h1>'; //Echo 'Title' from db into a heading
echo '<a href="'.htmlentities($row['image']).'"></a>'; //Echo 'image from db into a link
echo '<p>'.htmlentities($row['description']).'</p>'; //Echo 'description' from db to paragraph
echo '<p>Rating: '. htmlentities($row['rating']).'</p>'; //Echo 'rating' from db to paragraph
?>
</body>
这是我在图片中的数据库,因为这是向您展示的最简单方法: http://i.cubeupload.com/TBI5Fv.png
这是一个应该显示链接的网页。但是,它仅包含其他表字段: http://i.cubeupload.com/1tcfsU.png
奇怪的是,它没有给我任何错误,所以我不知道我哪里出错了。
希望有人可以提供帮助:)
答案 0 :(得分:0)
您的<a>
标记为空,因此无法识别。
echo '<a href="'.htmlentities($row['image']).'"></a>';
您应该将一些内容显示为如下链接:
echo '<a href="'.htmlentities($row['image']).'">THIS IS LINK TO IMAGE</a>';
如果您想显示图片本身而不是链接,则应使用<img>
标记,如下所示:
echo '<img src="'.htmlentities($row['image']).'"/>';