使用jQuery.ajax传递整数时PHP的$_POST返回NULL问题求助
问题解决:AJAX POST数据在PHP中返回NULL
核心问题
你jQuery代码里的参数键filterAdvertentienummer末尾多了一个空格,导致PHP中用$_POST['filterAdvertentienummer']无法匹配到对应参数,因此返回NULL。
修正后的jQuery代码
function get_cars_ajax() { var filterAdvertentienummer = 119005595; // 数字类型 $.ajax({ type: 'POST', url: '/wp/wp-admin/admin-ajax.php', dataType: 'html', data: { 'action' : 'get_cars_filter', 'filterAdvertentienummer' : filterAdvertentienummer, // 移除键名末尾的空格 }, success: function(data) { if(data != '') { // 执行操作 } else { // 不执行操作 } }, error: function(data) { console.log(data); } }); // 补充原代码缺失的ajax方法闭合括号 }
额外检查项
- 确保PHP的
get_cars_filter函数已正确注册到WordPress的AJAX钩子:
add_action('wp_ajax_get_cars_filter', 'get_cars_filter'); add_action('wp_ajax_nopriv_get_cars_filter', 'get_cars_filter'); // 供未登录用户调用
- 原PHP代码中
$current_page、$limit、$sort、$order变量未定义,需补充赋值逻辑,否则会引发语法错误。
验证方式
修正后可在PHP中先打印完整$_POST数组确认参数接收情况:
var_dump($_POST);
内容的提问来源于stack exchange,提问作者ZeroB
相关产品推荐
相关产品推荐

