我一直在关注php教程here
CODE
这是我的html文件:
<!DOCTYPE html>
<html>
<head>
<link rel=”stylesheet” type=”text/css” href=”style.css”>
<form action="postForm.php" method="post">
<TextArea name="microBlog" id="microBlog" cols="30" rows=“10"></TextArea>
<input type="submit">
</form>
</head>
<body>
<?php
require_once 'meekrodb.2.3.class.php';
DB::$user = 'root';
DB::$password = '';
DB::$dbName = 'MicroBlog';
$results = DB::query("SELECT post FROM MicroBlog");
foreach ($results as $row){
echo "<div class='microBlog'>" . $row['post'] . "</div>";
}
?>
</body>
</html>
这产生以下结果:
但是,如果我将php代码复制到一个新的postForm.php文件中,然后单击“提交”(因为你可以看到该动作是postForm.php),它就可以了。
我的空白屏幕上有3个字(来自数据库)。
问题是它是一个全新的空白页面,我不希望这样。
问题
为什么代码在html文件之外工作,但不在html文件中。为什么我在html文件里面得到".row['post']."";} ?>
但是当php存在于自己的php文件中时我得到了完美的输出?
代码显然没有任何问题,那可能是什么呢?
这让我很困惑。谢谢你的回答。
答案 0 :(得分:2)
将文件扩展名.html
更改为.php
或.phtml
。它会解决你的问题。
答案 1 :(得分:0)
您正在html文件中编写PHP代码。 html文件没有评估php代码。将文件的扩展名更改为 .php 而不是 .html ,这样你就可以在该文件中编写html和php代码
答案 2 :(得分:0)
原因: 1.一个html文件不支持其中的php脚本,因此写入的任何内容都不会被执行,只会被视为html标记。
<强>解决方案:强> 1.只需将.html文件保存为.php文件即可完成!(非常简单)。例如,如果您的文件名是index.html,只需将其保存为index.php,并执行所有内部的PHP脚本。
<强>的index.php:强>
<!DOCTYPE html>
<html>
<head>
<link rel=”stylesheet” type=”text/css” href=”style.css”>
<form action="postForm.php" method="post">
<textArea name="microBlog" id="microBlog" cols="30" rows=“10"></textArea>
<input type="submit">
</form>
</head>
<body>
<?php
require_once 'meekrodb.2.3.class.php';
DB::$user = 'root';
DB::$password = '';
DB::$dbName = 'MicroBlog';
$results = DB::query("SELECT post FROM MicroBlog");
foreach ($results as $row){
echo "<div class='microBlog'>" . $row['post'] . "</div>";
}
?>
</body>
</html>