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

在使用AJAX调用的PHP文件中检索序列化数据

堵茂勋
2023-03-14
问题内容

表单发送AJAX代码:

var str = $("form").serialize();
alert(str);
// var uns=@unserialize(str);
//alert(uns);
$.ajax({
    type: "POST",
    url: "update.php",
    data: "box1="+str,
    success: function(value)
    {
        $("#data").html(value);  
    }

HTML表单:

<form>
  <input type=checkbox name=box[] value='1'/><input type=checkbox name=box[] value='2'/>
</form>

在我的PHP中:

$box=$_POST['box1'];

如何在PHP端访问每个box变量值?


问题答案:

您的js应该是这样的:

var str = $("form").serializeArray();
$.ajax({  
    type: "POST",  
    url: "update.php",  
    data: str,  
    success: function(value) {  
            $("#data").html(value);
    }
});

使用php,您应该循环结果数组。

$box = $_POST['box'];
foreach ($box as $x) {
    echo $x;
}

编辑: 您必须在jQuery中使用serializeArray函数。然后它将与此代码一起工作。



 类似资料:
  • 问题内容: 三天过去了,但仍然无法解决问题。当发送JSON数据时,对我的js文件的此AJAX调用似乎可以正常工作: 但在我的PHP文件中: Firebug控制台出现一些错误: 我相信这在我的php文件中工作正常,但是无法从w / c变量声明的ajax调用中识别出我发布的数据: 我相信我对我的代码做得正确,似乎我在这里阅读了许多问题,做了他们说的话,但不知道为什么会发生错误。您是否遇到任何问题/错误

  • 问题内容: 我正在尝试使用jQuery中的$ .ajax()函数调用php文件,但是它不起作用。单击页面上的按钮时,将运行以下代码: 这是我的表格: 我已将表单的onClick设置为返回false,以便表单在提交时不会重新加载页面,从而可以运行jQuery。 任何帮助是极大的赞赏。 问题答案: 人们使用 表格的 主要原因是可以定义一个 动作 (在您的情况下为php脚本), 方法 (GET或POST

  • 问题内容: 使用Ajax jQuery函数,我将jQuery 表单数据发送到PHP函数,该函数在单个变量为空的情况下成功接收到它。 在我的PHP函数中,成功显示表单数据: 然而,并且 是空的。为什么? HTML: JS: 问题答案: 用代替 参考:-https : //api.jquery.com/serializeArray/ 两者之间的区别: 创建一个数组(不是“json数组”-没有这种东西)

  • 今天发生了一件奇怪的事情:我正试图使用jquery和ajax从一个JSON文件中检索一些数据,并将这些数据显示在一个网页上。我在互联网上找到的这个例子对我在基础操作系统上起作用。当我尝试从带有Win10操作系统的虚拟机运行它时,它不起作用,这意味着它会将我抛到:。为什么?提前多谢! 这在我的data19.json文件中: 我的脚本script19.js是: 我的HTML文件是:

  • 我试图在wordpress数据库中查询一个序列化数组值,value将存储在表wp_postmeta中,列META_VALUE中。 首先,我使用PHP的serialize()函数存储数组。 例如, 存储的值如下所示 然后当我试图通过执行wordpress sql查询来检索它时…我所期望的是它将是一个数组,因为它被存储为数组,但是这样做之后,它显示为字符串而不是数组。 我确实使用is_array()函

  • 我正在尝试使用从axios调用中检索到的数据。我在响应中得到了正确的信息,但当我试图返回响应时,调用函数中没有定义。是否有不同的方法将response.data返回给调用函数?