关于php标签中的代码被处理成html字符串了

centosmg 2012-04-19 06:20:32

源代码如下:
<html>
<head>
<title>Book-O-Rama Search Results</title>
</head>
<body>
<h1>Book-O-Rama Search Results</h1>
<?php
//create short variable names
$searchtype = $_POST['searchtype'];
$searchterm = trim($_POST['searchterm']);
if(!$searchtype || !$searchterm){
echo 'You have not entered search details.
Please go back and try again.';
exit;
}
//check if opened
if(!get_magic_quotes_gpc()){
$searchtype = addslashes($searchtype);
$searchterm = addslashes($searchterm);
}
@ $db = new mysqli('localhost','root','','books');
if (mysqli_connect_errno()){
echo 'Error:Could not connect to database.Please try again later.';
exit;
}
$query = "select * from books where ".$searchtype." like '%".$searchitem."%'";
$result = $db->query($query);
$num_results = $result->num_rows;
echo "<p>Number of books found".$num_results."</p>";

for ($i =0;$i<$num_results;$i++){
$row = $result->fetch_assoc();
echo "<p><strong>".($i+1).". Title: ";
echo htmlspecialchars(stripslashes($row['title']));
echo "</strong><br/>Author: ";
echo stripslashes($row['author']);
echo "<br />ISBN: ";
echo stripslashes($row['isbn']);
echo "<br />Price: ";
echo stripslashes($row['price']);
echo "</p>";
}
$result->free();
$db->close();
?>
</body>
</html>
...全文
369 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
改一下昵称 2012-04-19
  • 打赏
  • 举报
回复
那的确是你的环境没搭好。不信你做一个测试
<?php
echo "I am from php!";
?>
chrome浏览器中查看源代码 你会发现以上代码还是原样显示,只是变成绿色的了。
不明白为什么会出现这种情况。你的php文件放在网站www目录下吗,用http://localhost/xxx.php访问的吗?
不行的话就换成xampp试试吧
centosmg 2012-04-19
  • 打赏
  • 举报
回复
文件已经是php后缀了,浏览器看到的只有黑色部分的代码当成字符串输出了。我截这个图是在chrome浏览器查看源代码截的,在编辑器里代码都显示正常。
改一下昵称 2012-04-19
  • 打赏
  • 举报
回复
如果你贴的是你在浏览器上看到的,那就还是php程序没有被执行,<?php ?>之间的内容被浏览器当作注释解析了。 要将该文件保存为.php后缀的再去访问。
如果是你的编辑器这样显示,那么就放弃这款编辑器吧
centosmg 2012-04-19
  • 打赏
  • 举报
回复
centosmg 2012-04-19
  • 打赏
  • 举报
回复
补上截图:
黄袍披身 2012-04-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

环境已经搭建好了,是wampserver。不是php没有被执行,只是不知道为什么php标签内只有绿色部分的代码被执行了,而黑色部分的代码当做html字符串输出到浏览器了。
[/Quote]

没瞧见颜色,我该不是色盲了吧?
代码当作html输出了 一般都是没有正确的结束代码 或者引号弄错了地方.
centosmg 2012-04-19
  • 打赏
  • 举报
回复
环境已经搭建好了,是wampserver。不是php没有被执行,只是不知道为什么php标签内只有绿色部分的代码被执行了,而黑色部分的代码当做html字符串输出到浏览器了。
改一下昵称 2012-04-19
  • 打赏
  • 举报
回复
你是指php程序没有被执行?直接被输出到浏览器了?
那么是你的环境还没有搭建好。装个集成包就可以了, WAMPserver, xampp什么的都很简单

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧