我有一个php函数,需要通过AJAX接收数据。
这是我的密码:
Javascript
<script type='text/javascript'>
jQuery(document).ready(function() {
jQuery("#fetch_data_button").click(function() {
searchstring = "My search text";
jQuery.ajax({
type: "POST",
url: "admin-ajax.php",
data: {
action: 'fetch_data',
_ajax_nonce: '<?php echo $nonce; ?>',
data: searchstring
}
});
return false;
});
});
</script>
php
add_action( 'wp_ajax_fetch_data', 'fetch_data_fn' );
function fetch_data_fn() {
$searchstring = $_POST['searchstring'];
// why is $searchstring empty ... ?
die();
}
问题是来自AJAX调用的搜索字符串不会在php函数中接收(接收到的字符串为空)。有人能帮我吗?
发布于 2022-09-27 10:12:53
您的主要问题是,您通过ajax发送的数据中没有一个被命名为"searchstring“。您有一个名为"data“的属性,它保存一个名为"searchstring”的变量的值。因此,您需要在PHP中测试$_POST['data']
。
我也有点担心您试图在javascript代码中使用PHP。这通常是一个危险的信号,而且很可能有一个更好的方法来完成你想要完成的事情。
https://stackoverflow.com/questions/73872046
复制相似问题