因此;我是一个PHP菜鸟,我正试图让一个网站工作,作为一个有趣的副项目。我目前有一个带歌词的数据库,谁唱过那些歌词等等。现在我用以下代码回复这些到LYRICS.PHP:
的functions.php
function getLyric() {
(int)$id = $_GET['id'];
$query = mysql_query("SELECT * FROM lyrics WHERE id = ".$id."") or die(mysql_error());
while ($row = mysql_fetch_assoc($query)) { ?>
<h1><?= $row['title']; ?> lyrics</h1>
<h2><?= $row['author']; ?></h2>
<pre><?= $row['lyrics']; ?></pre>
<?php }
}
Lyrics.php?ID = 1
<?php getLyric(); ?>
哪个有效,但如何在页面的[title]标签中显示歌曲的歌手和名字? (目前它只是简单的HTML)。我现在如何设计它,我认为这不可能吗?
答案 0 :(得分:3)
这是你能做的。它不是太漂亮,它绝对可以简化,但它应该得到你想要的东西。
Lyrics.php?ID = 1
<html>
<head>
<title><?php getTitle(); ?></title>
</head>
<body>
<?php getLyric(); ?>
</body>
function getLyric() {
(int)$id = $_GET['id'];
$query = mysql_query("SELECT * FROM lyrics WHERE id = ".$id."") or die(mysql_error());
while ($row = mysql_fetch_assoc($query)) { ?>
<h1><?= $row['title']; ?> lyrics</h1>
<h2><?= $row['author']; ?></h2>
<pre><?= $row['lyrics']; ?></pre>
<?php }
}
function getTitle() {
(int)$id = $_GET['id'];
$query = mysql_query("SELECT * FROM lyrics WHERE id = ".$id."") or die(mysql_error());
while ($row = mysql_fetch_assoc($query)) { ?><?= $row['title']; ?> by <?= $row['author']; ?><?php } ?>
}
答案 1 :(得分:2)
这取决于您输出HTML的方式。如果您在lyrics.php
中使用内嵌HTML,那么您可以执行以下操作:
<html>
<head>
...
<title><?php echo getTitle(); ?></title>
...
如果您正在回显一串HTML,那么您可以执行以下操作:
echo "<title>" . getTitle() . "</title>"
显然,您需要先制作getTitle
功能。
答案 2 :(得分:0)
你可以使你的函数从该查询的结果中返回一个数组或对象,然后输出你想要的数组项,而不是让你的函数生成标记。 还要考虑对传递给GET变量
的值进行一些过滤