无法使用 PHP $_POST[] 变量检索 jQuery 序列化表单数据

2023-12-11

使用 Ajax jQuery 函数$.post(),我正在发送 jQueryserialized()将数据表单数据发送到 PHP 函数,该函数成功接收它$_POST[]但又个性$_POST['form_field']变量为空。

在我的 PHP 函数中,print_r($_POST)成功显示表单数据:

Array ( [action] => send_message [data] => modal_name=olivier&modal_email=olivier%40hotmail.com&modal_message=Hello+world )

Yet $_POST['modal_name'], $_POST['modal_email'] and $_POST['modal_message']是空的。为什么?

HTML:

<form id='contact'>
  <input type='text' name='modal_name' id='modal_name' />
  <input type='email' name='modal_email' id='modal_email' />
  <textarea name='modal_message' id='modal_message'></textarea>
</form>

JS:

$('#contact').on('submit', function(e) {
  e.preventDefault();
  if (modal_name && modal_email && modal_message) {
    var data = {
      action: 'send_message',
      data: $(this).serialize()
    };
    $.post(WPaAjax.ajaxurl, data, function(response) {
      $('.modal').append(response);
    });
  }
});

use $(this).serializeArray()代替$(this).serialize()

参考:-https://api.jquery.com/serializeArray/

两者的区别:-https://stackoverflow.com/a/10430571/4248328

您需要执行以下操作:-

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<form id='contact'>
  <input type='text' name='modal_name' id='modal_name' />
  <input type='email' name='modal_email' id='modal_email' />
  <textarea name='modal_message' id='modal_message'></textarea>
  <input type="submit" value = "submit">
</form>

<script type="text/javascript">
$('#contact').on('submit', function(e) {
  e.preventDefault();
  if (modal_name && modal_email && modal_message) {
     var data = $(this).serializeArray();
     data.push({name: 'action', value: 'send_message'});
     $.post('query.php', data, function(response) {
      $('.modal').append(response);
    });
  }
});
</script>

在 PHP 中:-

<?php

if(!empty($_POST)){
    echo "<pre/>";print_r($_POST);
}
?>

它将输出如下:-

<pre/>Array
(
    [modal_name] => sdsadsa
    [modal_email] => [email protected]
    [modal_message] => sadada
    [action] => send_message
)

注意:- 如果您想使用serialize()然后才像下面这样:-

<script type="text/javascript">
$('#contact').on('submit', function(e) {
  e.preventDefault();
  if (modal_name && modal_email && modal_message) {
     var data = $(this).serialize()+ '&action=send_message';
     $.post('query.php', data, function(response) {
      $('.modal').append(response);
    });
  }
});
</script>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法使用 PHP $_POST[] 变量检索 jQuery 序列化表单数据 的相关文章

  • 对于MySQL查询中的每个结果,推送到数组(复杂)

    好吧 这就是我想做的 我正在运行 MySQL 查询来获取最新的帖子 对于每个返回的行 我需要将行的 ID 推送到数组 然后在数组的该 ID 内 我需要从行中添加更多数据 多维数组 到目前为止 这是我的代码 query SELECT FROM
  • 如何等待第一次画布重绘,直到 @font-face-font 加载?

    我有一个 HTML5 画布并用它编写文本context fillText 使用 font face font 使用 Firefox 3 6 显示页面我遇到问题 在画布的第一次绘制上 字体尚未下载 因此文本将以标准字体显示 我找到了一个 解决
  • 插入前检查数据库中是否存在行

    DBH new PDO dsn username password opt DBH gt setAttribute PDO ATTR ERRMODE PDO ERRMODE EXCEPTION DBH gt setAttribute PDO
  • 将大数字转换为字母(然后再转换回来)

    是否有一个术语来描述将大数字存储为字母的想法 例如 假设我有 相对较小的 数字 138201162401719 并且我想将字符数缩小到尽可能少的字符数 我知道这无助于节省磁盘空间 英文字母表中有 26 个字母 但我将它们算作 25 个 因为
  • PHP DateTime 四舍五入到最近的 10 分钟

    我正在从 mysql 字段检索日期时间 但我需要对其进行四舍五入up精确到 10 分钟 例如 如果日期时间是 2013 11 06 14 00 01 我想返回时间为 6 11 2013 14 10 做到这一点最简单的方法是什么 dateti
  • 尝试制作Linux终端但失败

    这可能是一个愚蠢的问题 可能很容易找到 但我对这一切都很陌生 我似乎找不到我要找的东西 或者至少我不知道我需要寻找什么 所以我在这里 所以我想做的是创建一种 Linux 终端 这就是我到目前为止所得到的 我所坚持的是实际输入文本部分 我一直
  • 如何使用 jQuery 添加/附加到外部 JSON 文件

    我有一个 json 文件 我想构建一个表单 允许我在文件中添加 编辑元素 是否有 jQuery 函数 方法允许我在外部 json 文件中发布和追加元素 不确定这是否有帮助 但当前的 json 结构如下 cast director genre
  • 如何在没有 SSH 的情况下安装/使用 Composer

    伙计们 我有一个共享主机 我无法使用 SSH 或使用 php 调用 shell shell exec 出于安全原因 我无法因资金问题升级我的服务器 但我需要安装Composer 并使用 SDK 来完成我的项目 有什么方法可以安装 使用com
  • 在 jQuery 中添加 ID?

    是否有任何方法可以像添加类一样添加 ID addClass ID是一个属性 您可以使用attr http docs jquery com Attributes attr keyvalue功能 element attr id newID 我不
  • PHPStorm - 如何设置实时编辑[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我刚刚安装 PHPStorm 但在实
  • 关联数组不按顺序排列

    关联数组的顺序是这样的 A00 gt value1 A01 gt value2 B01 gt value3 B02 gt value4 但是在 for 循环之后数组顺序不起作用 for var key in obj3 code list1
  • jquery如何获取右、左、上、下箭头键值

    我使用了下面的代码 每当单击箭头键 左 右 上 下 时 我得到的键值为 0 任何人都可以帮忙解决这个问题吗 document keypress function e alert key value e which 如何获取 上 下 右 左
  • Laravel 4 中如何知道查询是否失败?

    我将 Laravel 4 与 MySQL 结合使用 我想知道如何控制在数据库中插入 更新或删除记录时可能出现的错误 例如 如果我进行如下更新 DB table user gt where id id gt update userdata 我
  • 以编程方式将礼品消息设置为现有订单[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在寻找一些代码 以便在 Mage
  • Select2 触发器(“更改”)创建无限循环

    假设页面上有两个 select2 元素 都使用 onChange 为了以编程方式在一个 select2 元素中设置一个值 您可以使用 id1 val xyz trigger change 如果您在这两个元素之一中进行选择时想要将另一个元素重
  • 如何从视图中使用模型函数? - 拉拉维尔 5.4

    我在模型类中创建了一个函数 它是 public function scopetest query return query gt pluck name 我的控制器代码是 public function index books Book al
  • json支持阿拉伯字符吗?

    我想问一个简单的问题 json 是否支持阿拉伯字符 我的意思是当我搜索类似以下内容时 values database gt get by name echo json encode array returnedFromValue gt va
  • WordPress admin-ajax.php 400 错误请求

    我的 WordPress admin ajax php 文件有一个奇怪且令人沮丧的行为 当我发出 ajax 请求时 它返回 400 错误错误请求 function var ajaxscript ajax url mydomain com w
  • 如何在 PHP 中知道种子/对等点的数量

    当您放置一个 torrent文件在您的网站上下载 您如何获取该 Torrent 的种子和同级数量并通知用户 您必须联系 torrent 文件中显示的跟踪器 如果跟踪器支持 抓取 这可能就是您想要的请求 否则 由跟踪器决定要返回多少个对等点给
  • JSON 数据的动态表单(不同类型)

    我尝试使用 JSON 中的数据在 AngularJS 中创建动态表单 我有这个工作 HTML p p

随机推荐

  • API-21 上的 Fragment 事务替换仍然落后

    我正在开发一个使用片段的应用程序 上周我的测试设备进行了棒棒糖更新 当我在棒棒糖设备上测试我的应用程序时 我发现 Fragment Transaction 的替换方法无法正常工作 尽管在 Kitkat 版本上一切正常 但它在 Lollipo
  • 嵌套 .pth 文件或从网络加载额外的站点目录

    目标是拥有一个通用目录 我可以在其中添加网络上的包 这些包会自动添加到sys path无需运行site addsitedir or sys path append每次我导入所述包时 有没有办法做到这一点 背景 我有一个小型用户网络 他们都需
  • 更改后无法保存 Jenkins 作业,没有可见错误

    前提 詹金斯 2 277 4Ubuntu 20 04 2 LTSopenjdk版本 11 0 11 2021 04 20 Problem 我有一份自由式工作 第一次保存所有已完成的更改 此时 保存 和 应用 按钮位于页面中底部 下次如果我进
  • NOPL在x86系统中做什么?

    NOPL在x86机器中的作用是什么 感觉好像什么也没做 但是为什么总是在汇编代码中呢 NOP是一个单字节 不执行任何操作 的操作 实际上是 无操作 NOPW NOPL 等相当于什么都不做 但会占用字和长字节 e g NOP 1byte op
  • 为什么/哪里出现错误“ 调用方法 Location.toString 的权限被拒绝”

    EDIT 我在回复评论时添加了澄清 在可能且有意义的地方 这些添加的修饰位于斜体字体样式 我已经在 Firefox 群组以及 SO 上发布了这个问题 关于 SO 至少有 25 个相关问题 其中一些代表性问题是 闪虫 跨域问题 只是一个谜 F
  • HTML / VBA 下拉菜单

    我在 VBA 和 HTML 例程方面遇到了一些问题 我必须从链接中选择https www betexplorer com next soccer 排序依据 下拉菜单并选择 联赛 项 我无法通过 VBA 执行此操作 这是我写的代码 Sub S
  • Python:哪个命令会增加 Windows 上打开文件的数量?

    关于这个主题似乎有很多问题 我似乎找不到我应该在 python 脚本中调用什么来增加打开文件限制 我知道我需要使用 setmaxstdio在 C 级别 但我不知道如何在 python 中调用它 有任何想法吗 尝试使用win32file fr
  • BSL(如何设计程序):如何将代码从单独的文件导入到定义区域?

    我对 BSL 有疑问 我想将我的代码分成单独的辅助文件并使用 require auxiliary function rkt 首先将分离的代码导入到定义区域 然而它并没有像想象的那样工作 虽然没有给出明确的错误 但似乎 DrRacket 根本
  • phpMailer gmail 垃圾邮件

    我使用 phpMailer 但有一个问题 当收件人是 Gmail 或 Yahoo 时 我的电子邮件最终会进入垃圾邮件文件夹 这怎么可能 代码是这样的 mail gt AddCustomHeader Reply to email protec
  • 获取数组中所有项目的密集排名和间隙排名

    我想使用 PHP 计算并存储数组中所有条目的密集排名和间隙排名 我想在 PHP 中执行此操作 而不是 MySQL 因为我每周处理 100 000 到 900 个组合的动态组合 这就是为什么我不能使用 MySQL 制作那么多表 我查找密集排名
  • 如何在matlab中对多张图像进行平均?

    我正在尝试从 1000 帧中获取平均图像 每个图像的大小为 512 x 512 像素 我从实验中获得的文件是 tiff 单元 16 数据 tiff 文件包含同一地点的 1000 帧 我正在考虑编写一个 m 文件 从 tiff 文件中读出 1
  • Shell 函数返回值不大于 255

    sum return 1 2 read a b sum a b echo 当我们传递 a 255 和 b 36 的值时 ans 将为 35 为什么 您要求 shell 返回该值 返回值不能大于 255 所以当你添加 a 255 和 b 36
  • java泛型加法

    我正在尝试实现提到的添加方法在通用稀疏矩阵加法问题中 class Matrix
  • MySQL 尝试截断表时出错

    我在截断 MySQL Server 5 5 上的表时遇到问题 我尝试截断的表有一列充当另一个表中的外键 The CREATE TABLE涉及的两个表如下 CREATE TABLE tbluser id int 11 NOT NULL AUT
  • 默认值、值和零初始化混乱

    我对值初始化 默认初始化和零初始化感到非常困惑 尤其是当他们针对不同的标准时C 03 and C 11 and C 14 我正在引用并试图扩展一个非常好的答案值 默认 零 初始化C 98 and C 03在这里使其更加通用 因为如果有人可以
  • Matlab互相关与相关系数问题

    我正在用 C 编写一个程序 但使用来自 matlab 的涉及互相关的数据 据我所知 当我对两组数据进行相关时 它会给出一个相关系数数字 表明它们是否相关 但我想使用互相关数据系列 当我在 Matlab 上运行互相关时 它给了我很多数据 绘制
  • 如何从Oracle中的正则表达式中提取组?

    我收到这个查询并想要提取括号之间的值 select de desc regexp substr de desc 1 from DATABASE where col name like 然而 它给了我带有括号的值 例如 TEST 我只想 测试
  • JavaScript 中的可变变量

    据我所知 这个功能在PHP中已经存在 让我们看一下下面的 php 代码 color red color dark 功能描述 有时拥有可变的变量名会很方便 即 可以动态设置和使用的变量名 变量变量采用变量的值并将其视为变量的名称 在上面的例子
  • Matplotlib 表面颜色不纯色

    在 Matplotlib 中绘制平面时 我没有得到纯色 我得到以下带有多种红色阴影的结果 我在 Python 3 5 2 中使用 Matplotlib 版本 1 5 1 我正在运行的代码如下 import numpy as np from
  • 无法使用 PHP $_POST[] 变量检索 jQuery 序列化表单数据

    使用 Ajax jQuery 函数 post 我正在发送 jQueryserialized 将数据表单数据发送到 PHP 函数 该函数成功接收它 POST 但又个性 POST form field 变量为空 在我的 PHP 函数中 prin