(我是一个完整的新手程序员)
我最近遇到了自定义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>
我的custommodule 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代码都显示在视图源中?
答案 0 :(得分:3)
您必须使用echo
或print
变量来显示它。您还可以执行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代码&amp;脚本。
如果您的自定义模块是要显示的HTML加载,则应使用inlude
命令:
<body>
<?php include("path/to/custom_module.php"); ?>
</body>
</html>
# custom_module.php
<div>Hello, I'm the custom module.</div>