【问题标题】:jquery using ajax to send data and save in php [duplicate]jquery使用ajax发送数据并保存在php中[重复]
【发布时间】:2013-10-02 12:11:33
【问题描述】:

我正在尝试从表单发送或获取数据,然后使用 jquery 和 ajax 将数据发送到应该将其保存在数据库中的 php 页面中,我如何在 jquery 中执行并使用 ajax 来执行它,任何帮助都会做,谢谢!

将使用 jquery ajax 将数据发送到 php 页面的 HTML 页面 1

 <form>
       Name:<input type='text' name='name'>
       E-mail:<input type='text' name='email'>
       Gender:<select name='gender'>
       <option value='male'>male</option>
       <option value='female'>female</option>
       </select>
       Message:<textarea name='about'></textarea>
 </form>

将从第 1 页表单接收数据的 PHP 第 2 页

<?php
echo "
 $_POST['name'];
 $_POST['email'];
 $_POST['gender'];
 $_POST['about'];
";  
?>

对这个项目的任何帮助都会对我们有很大帮助,谢谢!

(更新) 这是我尝试使用的 jquery,但它转到了 url,我认为这不是很安全

    $(document).ready(function(){
    $("#chat").click(function(){
        $("#content").load("a.php");
    });


    $("#send").ajaxSubmit({url: 'a2.php', type: 'post'})

    });

【问题讨论】:

  • php.net, w3schools.com - 完成。
  • 谢谢我会试试这个

标签: php jquery html ajax


【解决方案1】:

试试这个:

 <form id="formId">
           Name:<input type='text' name='name'>
           E-mail:<input type='text' name='email'>
           Gender:<select name='gender'>
           <option value='male'>male</option>
           <option value='female'>female</option>
           </select>
           Message:<textarea name='about'></textarea>
           <input type="button" value="Send" onclick="save()"/>
     </form>

 <script type="javascript">

    function save(){
        var query = $('#formId').serialize();
        var url = 'savedata.php';
        $.post(url, query, function (response) {
         alert (response);
        });

    }
</script>

将 ID 分配给您的表单...现在在我的代码中我已经给出了 ID formId..您可以根据您的表单名称更改此 ID。

【讨论】:

  • @user1868185:这很简单,只需将此代码复制并粘贴到您的 JavaScript 标记中并在发送按钮上使用
  • 我试过你的代码,但我不知道为什么它对我不起作用!:(我应该在我的html页面的头部添加s.th来使用javascript吗?
【解决方案2】:

您好,我将从在表单中添加一个 id 开始。然后要么点击按钮元素,要么只为按钮定义一个点击事件处理程序。

<form id="my_form">
       Name:<input type='text' name='name'>
       E-mail:<input type='text' name='email'>
       Gender:<select name='gender'>
       <option value='male'>male</option>
       <option value='female'>female</option>
       </select>
       Message:<textarea name='about'></textarea>
       <input type="button" value="Send" onclick="sendForm()"/>
 </form>

然后是 jquery/ajax/js 部分。

 function sendForm(){
    $.ajax({
    type: "POST",
    url: "PAGE2.php",
    data: jQuery("#my_form").serialize(),
    cache: false,
    success:  function(data){
       /* alert(data); if json obj. alert(JSON.stringify(data));*/
    }
  });

}

【讨论】:

  • 非常感谢,我也会试试你的!
【解决方案3】:

您可以使用以下代码:

var form = new FormData($('#form_step4')[0]);
form.append('view_type','addtemplate');
$.ajax({
    type: "POST",
    url: "savedata.php",
    data: form,
    cache: false,
    contentType: false,
    processData: false,
    success:  function(data){
        //alert("---"+data);
        alert("Settings has been updated successfully.");
        window.location.reload(true);
    }
});

其中 savedata.php 是您可以在其中执行数据库操作的文件名

【讨论】:

  • 谢谢我会试试你的代码!
  • 您不必担心表单元素可以随意使用,只需将表单 id 命名为 form_step4 并在头部包含一个 jquery 文件。所有将被转移到 savedata.php 文件:)
  • 感谢负载提供的附加信息,我在 jquery 中有点新,所以我目前正在尝试从其他人那里学习负载,我们非常感谢这里项目中的编码人员的每一个帮助,其他人正在做文档和这种风格,所以我现在真的很想自学,但真的很感谢!
  • @SunilVerma 如何在 php 中获取文件的值?是不是像 $_FILES['nameofinput'] ?这是否与其他输入字段一起使用?
  • @HogRider 如果您想在运行时将变量附加到发布请求,这只是一个示例。我把它留在代码中给感兴趣的人。
猜你喜欢
  • 2021-06-17
  • 2017-05-20
  • 2016-05-26
  • 2016-03-19
  • 2013-08-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-18
相关资源
最近更新 更多