如何在帖子后显示$ myGame变量的消息?
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<?php
$myGame = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["myGame"])) {
$myGame = "";
} else {
$myGame = test_input($_POST["myGame"]);
}
}
function test_input($data) {
$data = trim($data);
return $data;
}
?>
<h2>TITLE</h2>
<?php echo $myGame;?>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
<input type="submit" name="submit" value="Submit" class="btn">
</form>
<?php
if($_SERVER["REQUEST_METHOD"] == "POST"){
$myGame = "Does this message display after post?";
$_POST['myGame'] = $myGame;
}
?>
</div>
</body>
</html>
如果你转到这个页面http://universitychess.com/creategame.php 并发布,然后滚动到底部,它显示新的网址。我需要在页面顶部,但$ myGame不会显示它。
答案 0 :(得分:0)
<强>首先强>
如果您的脚本调用同一页面,则可以将action
参数设为空(action=""
)
<强>其次强>
您希望获得$_POST["myGame"]
变量,但没有myGame
名称的输入。
我将如何做到这一点:
<!DOCTYPE HTML>
<html>
<head>
</head>
<body>
<?php
$myGame = "";
if (isset($_POST))) {
if (!empty($_POST["myGame"])) {
$myGame = test_input($_POST["myGame"]);
}
}
function test_input($data) {
$data = trim($data);
return $data;
}
?>
<h2>TITLE</h2>
<?php echo $myGame;?>
<form method="post" action="">
<input type="text" name="myGame">
<input type="submit" name="submit" value="Submit" class="btn">
</form>
其他信息
您不应直接获得$_POST
值。
最好这样做:filter_input(INPUT_POST, 'myGame')
而不是$_POST['myGame']