php - 在不提交的情况下保存和加载表单中的数据

标签 php javascript jquery html forms

我的任务是为相当大的表单编写加载/保存函数。这样,用户可以保存他们的工作,然后返回并加载它并继续工作。

我决定使用服务器端存储并将数据本地保存到 mysql 数据库。我想出了“saveForm”,它只是将 $_POST 作为长字符串存储到列中。

我不知道如何编写“loadForm”。

我有:

<form id="qa" .. "> 
    <button id="saveForm" type="submit"..."> 
    <button id="loadForm" type="submit"..."> 
    <input type="hidden" id="unique_user_id"..."> 
</form>

<javascript> 
$('#saveForm').bind({
    click: function() {
        $.ajax({ 
            type: 'post',
            url: "/saveForm.php",
            data: $("#qa").serialize(),
            success: function() {
                alert("form was submitted");
            },
        });
        return false;
    },
}); 
<javascript>


saveForm.php:  (PHP & PDO) 
// connect
insert into `saveQAForm` ($_POST['id'],var_export($_POST));

最佳答案

做这样的事情:

$(document).ready(function() {

    $('#loadForm').bind({
       click: function() {
          $.ajax({ 
             type: 'post',
             url: "/loadForm.php",
             data: 'id=123&token=8ash198hkuhd98yhk',
             success: function(data) {
                $('#first_name').val = data.first_name;
                $('#last_name').val = data.last_name;   
             }
          });
          return false;
       },
    }); 

});

loadForm.php

// Get values
$id = $_POST['id'];
$token = $_POST['token'];

// Check hash value here. Use your preferred
// database method ensuring POST values are filtered first. Then:
if($token == $row['token'])
{
   // Make DB query to get form data and return it as JSON
   return json_encode($row);
}

我认为在检索表单时传递用户/ session 独有的唯一 token 或随机数非常重要,这样其他人就无法请求 ID 并获取该用户的个人信息。只是一个想法。

关于php - 在不提交的情况下保存和加载表单中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10619254/

相关文章:

php - 有什么方法可以使用 PHP 或 Xslt 提取单个 XML 标记的各个部分?

javascript - 为什么使用 checked 属性更改复选框时不调用 onchange 函数

javascript - Contenteditable 元素修改后会更改 ID

javascript - 在 JQuery 中打印一个 DIV 标签

php - 添加链接到我的 PHP echo

php - 比较Google Analytics API中的日期范围

javascript - Div鼠标悬停问题

用于 CSS 背景图像的 jQuery AJAX GIF 预加载器

php - 从 Laravel 中删除包

javascript - 解析 CGI 查询字符串正则表达式