gpt4 book ai didi

php - 来自电影数据库的列表,超链接不起作用

转载 作者:搜寻专家 更新时间:2023-10-30 20:23:15 25 4
gpt4 key购买 nike

我正在制作一种电影数据库网站。我想制作一个包含 100 部电影的列表,当您单击其中一部电影时,您会获得有关该特定电影的更多信息。

我正在使用一个包含电影的大数据库,这是我的查询:

 public function selectAll() {
$sql = "SELECT * FROM `movies` LIMIT 200";
$stmt = $this->pdo->prepare($sql);
$stmt->execute();
return $stmt->fetchAll(PDO::FETCH_ASSOC);
}

这是我在 Controller 中所做的:

class MoviesController extends Controller {

private $movieDAO;

function __construct() {
$this->movieDAO = new movieDAO();
}

public function index() {
$this->set('movies', $this->movieDAO->selectAll());
}

这就是我在索引中所做的:

<?php
echo "<ol>";
if(!empty($movies)) {
foreach($movies as $movie){
echo "<li><a href=\"index.php?page=detail&amp;id={$movie['id']}>{$movie['title']}</a></li>";
}
}
echo "</ol>";
?>

当我运行它时,我的 HTML 中确实得到了一个奇怪的结果:

<a href="index.php?page=detail&amp;id=1&gt;Avatar&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href=" index.php?page="detail&amp;id=2">Pirates of the Caribbean: At World's End</a>

a href 真的搞砸了,我不知道我做错了什么。

最佳答案

您忘记在 URL 的末尾放置一个转义双引号。这应该是这样的:

//                                                      here --v
echo "<li><a href=\"index.php?page=detail&amp;id={$movie['id']}\">{$movie['title']}</a></li>";

使用 HTML5,您可以省略属性值的引号,看起来像:

echo "<li><a href=index.php?page=detail&amp;id={$movie['id']}>{$movie['title']}</a></li>";

关于php - 来自电影数据库的列表,超链接不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51947047/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com