如何填写表单并返回修改php中的记录

时间:2017-03-07 08:02:07

标签: javascript php

[enter image description here]

我想填写表格,并能够返回修改记录。但是当我返回时,我希望表单具有以前的值。当我把" />

我收到了错误。 请帮忙

谢谢!

我的代码

<?php

if (isset($_POST['submit'])) {
    $from = 'hello@gmail.com';
    $subject = $_POST['subject'];
    $text = $_POST['elvismail'];
    $output_form = false;
    if(empty($subject) && empty($text)) {
        echo 'You forgot the email subject and body text.<br />';
        $output_form = true;
    }
   if (empty($subject) && (!empty($text))) {
        echo 'You forgot the email subject.<br />';
        $output_form = true;
    }

    if ((!empty($subject)) && empty($text)) {
        echo 'You forgot the email body text.<br />';
        $output_form = true;

        }

   if ((!empty($subject)) && (!empty($text))) { 

       if(isset($_POST['cancel'])) {
        echo "cancel";
      }
      else if(isset($_POST['send'])) {

       echo "submit";
      }

    ?>

    <form method="post" action="index.php">
        <table>
        <tr> 
            <td>Subject of email</td>
            <td> <?php echo $subject; ?> </td>
        </tr>
        <tr>
           <td>Body of email</td>
           <td><?php echo $text ?> </td>
        </tr>

        </table>
    <input type="submit" name="cancel" value="cancel" />
    <input type="submit" name="send" value="Submit" />
    </form>
    <?php
  }
}
else {
    $output_form=true;
}

if ($output_form) {
?>
<form method="post" action="index.php">
<label for="subject">Subject of email:</label><br />
<input id="subject" name="subject" type="text" size="30" /><br />
<label for="elvismail">Body of email:</label><br />
<textarea id="elvismail" name="elvismail" rows="8" cols="40"></textarea><br />
<input type="submit" name="submit" value="Submit" />
</form>

<?php
}

?>

1 个答案:

答案 0 :(得分:0)

在这种情况下,使用客户端资源要好得多,而不是再次将其存储在php上。因为它只是一个临时值,使用本地存储会让您受益匪浅。

Javascript JQuery 将是实现此目标的最佳方法。

  

第1步:在表单上的每个输入模糊后,将值存储在LocalStorage上。

     

第2步:当用户返回页面时。只需指定您在localStorage

上保存的最新数据

因为如果您刷新页面,您将丢失php中的数据变量,并且需要在database上再次获取它,从而产生相同的数据值。

我建议您阅读LocalStorage并阅读有关使用JQuery控制输入的内容。

x = $("#form").serialize();
localStorage.setItem("temp_form_data" , x);

// To retrieve it simply convert it to JSON and assign it to each inputs.

var temp = JSON.parse(localStorage.getItem("temp_form_data"));

$("your-input-target").value(temp.id);
$("other-input-target").value(temp.description);

//and so on

这就是设置和获取输入数据的实现方式。