如何在预览和返回后重新添加表单数据?

时间:2015-03-29 21:43:38

标签: php html

我有一个网页和一个提交数据的地方。我为此制作了一个预览页面,每当用户点击“预览”时他可以看到它会是什么样子。麻烦的是每当他们从预览中点击后退按钮时,所有数据都消失了。如何在没有任何非常复杂的解决方案的情况下避免这种情况并保留数据?


preview.php

<?php
session_start();

$getTitle =  $_POST['title'];
$getEntry = $_POST['entry'];

date_default_timezone_set('UTC');
$getTime = date('D, M jS, o, H:i a e');

$user = $_SESSION['username'];

?>

<?xml version = "1.0" encoding = "utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns = "http://www.w3.org/1999/xhtml">
<link rel="stylesheet" type="text/css" href="css/main.css">

<head> <title>  Blog - Preview </title> </head>

<body>

    <div class="wrap">

        <div class="navPreview">
                <ul>
                    <li><a href="addentry.html">Back</a><br></li>
                </ul>
            </div>

        <div class="main">

            <h1>Preview</h1>

            <div class="mainscroll">
                <?php
                    echo "<span>Submitted at: $getTime by $user</span><br>";
                    echo "<h2>$getTitle</h2>";
                    echo "<p>$getEntry</p><hr>";
                ?>
            </div>

        </div>

    </div>

    <div class="footer">x</div>

</body>


addentry.html

<?xml version = "1.0" encoding = "utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns = "http://www.w3.org/1999/xhtml">

<link rel="stylesheet" type="text/css" href="css/main.css">

<head> <title> Blog - Add Entry </title> </head>

<body>

<div class="wrap">
    <div class="header">

        <h2> Welcome.. </h2>
        <p>..add an entry below</p>

    </div>

    <div class="nav">
        <ul>
            <li><a href="index.php">Home</a><br></li>
            <li><a href="#">Add Entry</a><br></li>
            <li><a href="logout.php">Logout</a><br></li>
        </ul>
    </div>

    <div class="main">
        <form id="entryForm" action="addentry.php" method="post">
            <p class="title">
                <label>Title:</label>
                <input type="text" name="title"><br>
            </p>
            <p class="body">
                <label>Entry:</label>
                <textarea name="entry"></textarea><br>
            </p>
            <p class = "buttons">

                <script type="text/javascript">
                    function clearConfirm() {
                        var confirm = window.confirm("Are you sure you want to clear?");
                            if (confirm) {
                                document.getElementById("entryForm").reset();
                            }
                    }
                    function previewForm(action) {                                  document.getElementById('entryForm').action = action;
                        document.getElementById('entryForm').submit();
                    }                           
                </script>

                <input type="button" onclick="clearConfirm()" value="Clear" />
                <input type="button" onclick="previewForm('preview.php')" value="Preview" />
                <input type="submit" value="Submit" />
            </p>
        </form>
    </div>

    <div class="footer">x</div>
</div>

1 个答案:

答案 0 :(得分:0)

也许添加target="_blank"?它将在新选项卡中打开预览。

<input type="button" onclick="previewForm('preview.php')" value="Preview" target="_blank"/>

编辑:Oups不在表单中但在预览链接上... 或类似的东西:http://www.w3schools.com/tags/att_button_formtarget.asp