0

したがって、ユーザー入力を収集してユーザーに出力する、つまりブラウザーに表示するだけでなく、 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>
4

2 に答える 2

1

ページが更新されたときに再度表示されるように、セッションを使用して以前の変数を保存する必要があります。

コードを次のように変更します。}

また<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

URL サイトが 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. セッションの作成方法
  2. セッションに変数を保存する方法
  3. セッションの変数を変更する方法

基本的に、必要なものはすべてこのコードに含まれています。想像できる限りそれらを利用してください。幸運を。

于 2013-07-22T04:43:53.053 に答える
-1

HTML5 はそれを行うことができます。これをチェックして、

http://www.w3schools.com/html/html5_webstorage.asp

HTML5 はブラウザでのオフライン ストレージを提供します。Cookie を使用することもできますが、この場合は Web ストレージを使用することをお勧めします。

于 2013-07-22T04:44:53.517 に答える