php与html冲突

时间:2016-10-05 17:09:23

标签: php html

所以我有一个包含PHP和HTML的文件。 HTML工作正常,但是当我进入PHP时,由于某种原因它不会呈现任何内容。请参阅beter refrence的代码。 此外,日志并没有真正说明这个问题。

这无法做任何事情

<?php

echo $_POST['naam'];
die();

?>

<!DOCTYPE html>
<html>
<head>
    <title>Scouts Permeke</title>
    <link rel="stylesheet" type="text/css" href="siteStyle.css">
</head>
<body>
    <H2>Login</H2>

    <form action="login.php" method="POST">
        <input name="naam" type="text" id="naam" class="form-control" placeholder="Gebruikersnaam"/><br>
        <input name="psw" type="password" id="psw" class="form-control" placeholder="Passwoord"/><br>
        <button type="submit">Login</button>
    </form>	
</body>
</html>

但这会按预期显示我的HTML。

<!DOCTYPE html>
<html>
<head>
    <title>Scouts Permeke</title>
    <link rel="stylesheet" type="text/css" href="siteStyle.css">
</head>
<body>
    <H2>Login</H2>

    <form action="login.php" method="POST">
        <input name="naam" type="text" id="naam" class="form-control" placeholder="Gebruikersnaam"/><br>
        <input name="psw" type="password" id="psw" class="form-control" placeholder="Passwoord"/><br>
        <button type="submit">Login</button>
    </form>	
</body>
</html>

2 个答案:

答案 0 :(得分:1)

您需要检查变量是否实际设置,否则如果用户已输入数据并按下提交按钮,它将始终打印出$_POST['naam']的内容而不会打扰。

if(isset($_POST['naam'])) {
  echo $_POST['naam'];
  die();
}

答案 1 :(得分:0)

那是因为它忽略了一个错误,因为$ _POST数组没有&#34; naam&#34;变量和你的php.ini显示错误是关闭。在php中,如果数组不包含密钥,它将抛出错误,并且由于生产设置,错误将被忽略。而且,这就是&#34; die();&#34;行不被解释。请检查php.ini是否有评论

display_errors: Off

并将其变为

display_errors: On

重启apache以使设置正常工作。

您还可以删除/注释PHP标记中的第一行代码,看看die()是否正常工作。如果这样可以解决您的错误,请告诉我们。