3

(我是一个完整的新手程序员)

我最近遇到了我的自定义 CMS 的问题。我想让它对 SEO 友好,所以我试图通过加载的页面来呼应标题,例如

www.blaa.com/index.php?page=about //code here grabs the required page title from the mysql db $title = $row['title']; <title><?php echo $title; ?></title>

我看不出这是否真的有效,因为当我查看源代码时它只显示以下代码:

<table> <tr><td>Custom Module<br><br>

我的自定义模块 cus 任何 html 都在这里

</td></tr> <tr><td>Menu Body <br><br> <a href='home.html'> home</a><br><a href='about page.html'> about page</a><br><br><br> </td></tr> <tr><td>body<br> cant believe im so a<br></div> </td></tr> <tr><td>Footer<br> links go here to various pages<br></td></tr> </table>

有没有办法让所有的 HTML 代码显示在视图源中?

4

1 回答 1

3

你必须echoprint一个变量来显示它。你也可以做一个var_dump检查值是什么。

<?php
$title = isset($_GET['title'])? $_GET['title'] : "No title.";
?>
<!DOCTYPE html>
<html>
<head>
  <title><?php echo htmlspecialchars($title); ?></title>
</head>

我添加htmlspecialchars以防止脚本注入,我不知道它是否可以在title标签中工作,但我添加它以防万一。另外,您应该知道,每当您将用户输入写入 HTML 页面时,您应该使用 htmlspecialchars 来取消任何 html 代码和脚本。

如果您的自定义模块是您想要显示的 HTML 负载,您应该使用以下inlude命令:

<body>
<?php include("path/to/custom_module.php"); ?>
</body>
</html>

# custom_module.php
<div>Hello, I'm the custom module.</div>
于 2012-05-08T10:03:31.000 回答