我的$ _POST函数有问题。 我有这个简单的代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<?php
if (isset($_POST["password"])){
echo $_POST["password"];
};
?>
<form action="" method="POST">
Password: <br>
<input type="password" name="password"><br><br>
<input type="submit" name="submit" value="SUBMIT">
</form>
</body>
</html>
我在PhpFiddle上运行此代码,它可以正常工作。但是,当我在笔记本电脑上运行时,我收到此错误:
注意:未定义的索引:密码
感谢您的帮助。我正在运行XAMPP控制面板v3.22。 IDE:PhpStorm。 Php版本:7。操作系统:Windows 10。 我甚至在这里问过这个问题:
答案 0 :(得分:1)
您缺少在表单的action
属性中放置值。替换此代码:
<form action="" method="POST">
使用此代码:
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" method="POST">
action属性中的前一个php代码通知form
输入应该发送到同一页面。 htmlspecialchars()
功能用于防止您网站上的XSS攻击。
<强>编辑:强>
你也忘了放一个封闭的parethesis。替换以下代码:
if (isset($_POST["password"]){
与
if (isset($_POST["password"])){
如果这对你有用,请告诉我。