当前位置: 首页 > 面试题库 >

使用AJAX将表单数据保存到PHP

韦澄邈
2023-03-14
问题内容

如何将表单数据保存在文件或本地db(也许使用AJAX)中,该文件或数据通过表单操作将数据发送到外部db?

我的表单的源代码在这里:http :
//jsbin.com/ojUjEKa/1/edit

我应该对代码进行哪些更改(如果有)?

EDIT:
对。因此,我能够使用AJAX将数据存储到localStorage中,并希望将存储的数据发送到名为backend.php的文件中。这是我的html文件: http
//jsbin.com/iSorEYu/1/edit

这是我的backend.php文件:http :
//jsbin.com/OGIbEDuX/1/edit

AJAX在将字段存储在localStorage中的工作绝对正常,但是当尝试将数据发送到backend.php时出现了问题。我收到以下错误:

 [24-Jan-2014 08:40:34 America/Chicago] PHP Notice:  Undefined index: data in /home4/private/public_html/marketer/backend.php on line 7
 [24-Jan-2014 08:40:34 America/Chicago] PHP Warning:  Invalid argument supplied for foreach() in /home4/private/public_html/marketer/backend.php on line 10
 [24-Jan-2014 08:40:58 America/Chicago] PHP Notice:  Undefined index: data in /home4/private/public_html/marketer/backend.php on line 7
 [24-Jan-2014 08:40:58 America/Chicago] PHP Warning:  Invalid argument supplied for foreach() in /home4/private/public_html/marketer/backend.php on line 10

这是什么问题?


问题答案:

PHP:

<h1>Below is the data retrieved from SERVER</h1>
<?php
    date_default_timezone_set('America/Chicago'); // CDT
    echo '<h2>Server Timezone : ' . date_default_timezone_get() . '</h2>';
    $current_date = date('d/m/Y == H:i:s ');
    print "<h2>Server Time : " . $current_date . "</h2>";

    $dataObject = $_POST; //Fetching all posts

    echo "<pre>"; //making the dump look nice in html.
    var_dump($dataObject);
    echo "</pre>";

        //Writes it as json to the file, you can transform it any way you want
    $json = json_encode($dataObject);
    file_put_contents('your_data.txt', $json);
?>

JS:

<script type="text/javascript">
$(document).ready(function(){
localStorage.clear();

$("form").on("submit", function() {
    if(window.localStorage!==undefined) {
        var fields = $(this).serialize();

        localStorage.setItem("eloqua-fields", JSON.stringify( fields ));
        alert("Stored Succesfully");
        $(this).find("input[type=text]").val("");
        alert("Now Passing stored data to Server through AJAX jQuery");
        $.ajax({
           type: "POST",
           url: "backend.php",         
           data: fields,
           success: function(data) {
              $('#output').html(data);
           }
        });
    } else {
        alert("Storage Failed. Try refreshing");
    }
});
});
</script>


 类似资料:
  • 问题内容: 好的,这就是我想要做的(注意:我对PHP还是陌生的): 我有一个电影/电视剧等的注册表格。然后将填写的表格中的数据注册(register.php)并发送到MySQL数据库,该数据库工作正常。但是,这里出现了:我还希望在同一个寄存器文件(register.php)中将数据存储在现有XML文件(data.xml)中。这里重要的是,每个成功提交的表单都存储在相同的XML文件(data.xml

  • 问题内容: 我今天花了很多时间研究如何在cakephp中使用ajax请求保存数据,现在已经知道在cakephp网站上的文档似乎缺少该特定主题。 我有几个可排序的列表,对一个列表项进行排序时,我需要保存每个列表项的位置。我有一个如下设置的ajax请求,该请求在移动项目时触发: 控制器中引用的功能为: 我已经设置了助手等: 而且它不起作用… 所以我的问题是: 1)当前向控制器中的动作发送ajax请求的

  • 问题内容: 我在MVC3中有一个页面,带有链接(Ajax.ActionLink)。当用户单击它时,它将调用控制器的动作,并将结果插入到div中,并带有replace。 代码如下所示: ImageLinkAction是使用图像作为链接的自定义扩展方法,而ShowPopup是显示更新后的div(使其显示为弹出窗口)的javascript函数。 现在,插入到创建弹出窗口的div中的标记代码包含如下形式

  • 我刚刚开始学习SpringMVC。我试图将一些数据从Thymeleaf表单保存到存储库,这扩展了CrudRepository。不幸的是,数据没有显示。 当我进入结果页面时,我看到使用的ID,但没有键入要形成的数据。哪里出了错? 这是控制器 `型号: 存储库: 表格摘录: 并从结果模板中提取:

  • 这是使用PHP将数据从(HTML)表单保存到MySQL数据库的规范问答。 如果您正在尝试执行以下操作,则此操作适用于您: 接受HTML表单上的用户输入 使用PHP脚本处理输入 将所述输入存储到MySQL数据库中。 过去提出的不应使用的类似问题的例子: 连接PHP代码并将表单提交到mySQL数据库 使用PHP/html表单插入mySQL-不工作 如何使用PHP将html表单数据传递到mySQL db

  • 问题内容: 基本上我想做的是,当用户将重点放在另一输入上时,将一个值从表单保存到sql数据库中。我想最好的方法是使用ajax。(希望如此!)这是我的代码: 剧本: 的HTML: 和StoreLocation.php代码: 当前,此代码仅将用户移至带有$ city变量的新URL,例如:www.example.com/london。 任何帮助都将是惊人的,因为我在这个问题上坚持了太长时间了:) 请求的