gpt4 book ai didi

php - 将 php 变量添加到 WordPress mysql 查询中

转载 作者:行者123 更新时间:2023-11-29 23:55:08 24 4
gpt4 key购买 nike

我正在尝试将来自 ajax 查询的数据插入到 DB 中。当我用简单的文本测试该函数时,它起作用了:

array('reference_id'=> 'test'),
array('checkin_time'=> 'test'),

但是我的 PHP 变量在正确的情况下却没有(通过alert()测试,它们都是字符串)

array('reference_id'=> $calendartime),
array('checkin_time'=> $reference_id),

这是我的模板functions.php中的完整代码:

wp_enqueue_script('jquery');
wp_localize_script( 'my-ajax-request', 'MyAjax', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) ) );

function addCheckin(){
global $wpdb, $calendartime, $reference_id;
$calendartime = $_POST['calendar_time'];
$reference_id = $_POST['reference_id'];

if($wpdb->insert('checkin',
array('reference_id'=> $calendartime),
array('checkin_time'=> $reference_id),
array( '%s'),
array( '%s') )===FALSE){

echo "Error";
}else {}
die();
}

add_action('wp_ajax_addCheckin', 'addCheckin');
add_action('wp_ajax_nopriv_addCheckin', 'addCheckin');

还有jquery:

   $.ajax({
type: "POST",
url: "/wp-admin/admin-ajax.php",
data:{
action: addCheckin,
reference_id: $('.reference input').val(),
calendar_time: calendar
},
success: function(response) {
alert(response);
},
error: function(){
alert("failure");
}
});

感谢您的帮助

最佳答案

您的 WordPress 插入内容似乎有误。应该是:

$wpdb->insert('checkin',
array('reference_id' => $calendartime,
'checkin_time' => $reference_id),
array( '%s', '%s') )

我还认为你的 AJAX post JavaScript 应该是这样的:

$.post(   MyAjax.ajaxurl,  {
data:{
action: addCheckin,
reference_id: $('.reference input').val(),
calendar_time: calendar
},
success: function(response) {
alert(response);
},
error: function(){
alert("failure");
}
});

关于php - 将 php 变量添加到 WordPress mysql 查询中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25421874/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com