我在WORDPRESS上,我想更新名为 wppl_friends_locator 的表格,更确切地说是 lat 和 long 的字段>登录用户
每次登录访问网站时,它实际上都会抓住他的坐标:
allNextBtn.click(function(){
var curStep = $(this).closest(".setup-content_cli"),
curStepBtn = curStep.attr("id"),
nextStepWizard = $('div.setup-panel_cli div a[href="#' + curStepBtn + '"]').parent().next().children("a"),
curInputs = curStep.find("input[type='text'],input[type='email'],input[type='url'],textarea, email,select,select[readonly]"),
isValid = true;
$(".form-group").removeClass("has-error");
for(var i=0; i<curInputs.length; i++){
if (!curInputs[i].validity.valid){
isValid = false;
$(curInputs[i]).closest(".form-group").addClass("has-error");
$("#"+$(curInputs[i]).attr('id')+"ErrorCLI").show("fast");
//$(curInputs[0]).closest(".form-group").focus();
}
else{
$("#"+$(curInputs[i]).attr('id')+"ErrorCLI").hide("fast");
}
}
if (isValid)
nextStepWizard.removeAttr('disabled').trigger('click');
});
现在我希望在某些页面上,当用户加载这些页面时,数据库会被这些值更新...
怎么办?我是PHP的新手,我试着理解,我知道我不是在平台上询问并提供代码,但我需要花费数天的时间才能想出这样的东西,所以一点点帮助都会非常感激!
谢谢!
答案 0 :(得分:1)
将它放在你的主题functions.php
中function update_coordinate( $latitude, $longitude ){
global $current_user;
global $wpdb;
$update_result = false;
if ( is_user_logged_in() ) {
$update_arr = array(
'latitude' => $latitude,
'longitude' => $longitude
);
$update_result = $wpdb->update( 'wppl_friends_locator', $update_arr, array( 'user_id' => $current_user->ID ) );
}
return $update_result;
}
然后在模板文件中调用“update_coordinate”函数(带有纬度和经度参数)。你可以在“get_footer()”之后调用它。
这是一个示例(我不能发表评论,所以我只是在这里添加)。您也可以在“wp_footer()”
之后将它放在主题的footer.php中$latitude = ( !empty( $_COOKIE['gmw_lat'] ) ) ? urldecode( $_COOKIE['gmw_lat'] ) : false;
$longitude = ( !empty( $_COOKIE['gmw_lng'] ) ) ? urldecode( $_COOKIE['gmw_lng'] ) : false;
update_coordinate( $latitude, $longitude );
<强>更新强> 如果当前用户表中没有行
,则插入function update_coordinate( $latitude, $longitude ){
global $current_user;
global $wpdb;
$query_result = false;
if ( is_user_logged_in() ) {
# check if user has record
$row_count = $wpdb->get_var( $wpdb->prepare(
"SELECT count(member_id) FROM wppl_friends_locator WHERE member_id = %d", $current_user->ID ) );
if ( $row_count > 0 ) {
$update_arr = array(
'lat' => $latitude,
'long' => $longitude
);
$query_result = $wpdb->update( 'wppl_friends_locator', $update_arr, array( 'member_id' => $current_user->ID ) );
}else{
$insert_arr = array(
'member_id' => $current_user->ID,
'lat' => $latitude,
'long' => $longitude
);
$query_result = $wpdb->insert( 'wppl_friends_locator', $insert_arr );
}
}
return $query_result;
}