我的function error()
无法从php代码调用。所以请帮我解决这个问题。函数在 PHP 代码之外调用时工作正常。但在调用时不显示输出 坚持 PHP 代码。
<html>
<head>
<title>Login Page</title>
<link rel="stylesheet" href="css/design.css">
<script type="text/JavaScript">
function error(){
document.getElementById("wrong-attempt").innerHTML="Wrong Username Or Password";
}
</script>
<?php
if(isset($_POST['submit'])){
echo '<script> error(); </script>';
}
?>
</head>
<body background="pics/background.jpg">
<div class="wrapper">
<center>
<div class="form-wrapper">
<form action="index.php" method="POST">
<div>
</div>
<h1>User Login</h1>
<div>
<img src="pics/login.png" width="100" height="100"/>
</div>
<div>
<input name="ID" placeholder=" Username" type="text" required="true"/></br>
<input name="pass" placeholder=" Password" type="password" required="true"></br>
<input type="image" src="pics/loginb.png" name="submit" value="Login" width="100"/>
</div>
</form>
<div id="wrong-attempt">
</div>
</div>
<center/>
</div>
</body>'
</html>
把这个PHP块放在错误尝试的div元素之后。您正在调用 error() 函数,该函数甚至在浏览器中创建该元素之前就对其进行操作。
正如评论中也建议的那样,与其使不必要的 JavaScript 函数调用复杂化,只需将该 PHP 放入 <div id="wrong-attempt"></div>
元素中,然后简单地打印出消息或整个元素,如果没有错误,甚至不发送此 div。
并将您的 JavaScript 放入页脚中,就在结束</body>
标签之前,正如评论中建议的那样。