所以我有这个基本程序,允许您收集用户输入并将其输出回用户,或者换句话说,在浏览器中显示,但也允许您使用onClick方法删除对象。所以这基本上是一个非常简单的Todo列表。
我的问题是如何收集信息并在页面上的行中显示每个先前的信息,而不是刷新浏览器时的所有信息。我知道这样的东西对于数据库来说是理想的,但我试图保持简单,到目前为止我对数据库的了解还不够。我觉得PHP甚至Javascript都可以解决这个问题,但不是为了点击我。也许for循环或while循环可以完成不确定的工作,我可以使用一些帮助。谢谢。
<?php
if (isset($_POST["user"])) {
$user_info = $_POST["user"];
}
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Manage Todos</title>
</head>
<body>
<form action="" method="post">
<input type="text" name="user"></input>
<input type="submit" value="Post">
</form>
<h1><a href="#" onclick="remove(this)"><?php echo $user_info;?> <?php echo $collect; ?></a></h1>
</body>
</html>
答案 0 :(得分:1)
您应该使用session来存储上一个变量,以便在刷新页面时再次显示。
将您的代码更改为: if(isset($ _ POST [“user”])){ $ _SESSION [“user_info”] = $ _POST [“user”]; }
同时将<h1>
更改为以下内容:
<h1><a href="#" onclick="remove(this)"><?php if (isset($_SESSION["user_info"])) echo $_SESSION["user_info"]; ?></a></h1>
或者您可以将<h1>
更改为:
<?php
if (isset( $_SESSION["user_info"])) {
?>
<h1><a href="#" onclick="remove(this)"><?php echo $_SESSION["user_info"]; ?></a></h1>
<?php
}
?>
希望这有帮助。
<强>更新强>
抱歉,忘了告诉你应该先开会。这是正确的代码:
<?php
session_start();
if (isset($_POST["user"])) {
$_SESSION["user_info"] = $_POST["user"];
}
?>
更新2
假设您的网址是015_session_variable.php。
将您的代码更改为:
<?php
session_start();
if (isset($_POST["user"])) {
$_SESSION["old_user_info"] = isset($_SESSION["new_user_info"]) ? $_SESSION["new_user_info"] : "";
$_SESSION["new_user_info"] = $_POST["user"];
}
if (isset($_GET["remove"])) {
if ($_GET["remove"] == "new")
$_SESSION["new_user_info"] = "";
else
$_SESSION["old_user_info"] = "";
}
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Manage Todos</title>
</head>
<body>
<form action="015_session_variable.php" method="post">
<input type="text" name="user" required></input>
<input type="submit" value="Post">
</form>
<?php
if (isset($_SESSION["new_user_info"]) && $_SESSION["new_user_info"] != "") {
?>
<h1><a href="#" onclick="removeMe('new');" title="Remove Me">Latest User : <?php echo $_SESSION["new_user_info"]; ?></a></h1>
<?php
}
?>
<?php
if (isset($_SESSION["old_user_info"]) && $_SESSION["old_user_info"] != "") {
?>
<h1><a href="#" onclick="removeMe('old');" title="Remove Me">Previous User : <?php echo $_SESSION["old_user_info"]; ?></a></h1>
<?php
}
?>
<script>
function removeMe(a) {
window.open('015_session_variable.php?remove=' + a, '_self');
}
</script>
</body>
</html>
现在您有关于:
的信息基本上你需要的就是这段代码。尽可能地利用它们。祝你好运。
答案 1 :(得分:-1)
HTML5可以为您做到这一点。检查一下,
http://www.w3schools.com/html/html5_webstorage.asp
HTML5在浏览器中提供离线存储。您也可以使用cookie,但在您的情况下,网络存储是更好的选择。