在 wordpress 插件的自定义 table 中插入数据
Insert the data in custom table in wordpress plugin
我正在尝试插入数据,但在从脚本 ajax 调用 seding 时遇到致命错误。请帮助我 one.Thanks 在 advance.Am 中使用它进行 Wordpress 插件开发
include_once($_SERVER['DOCUMENT_ROOT'].'/wordpress/wp-config.php' );
global $wpdb;
$table ='wp_mnggallery';
if(isset($_POST['img'])){
$img = $_POST['img'];
$back_image = $_POST['back_img'];
$url = $_POST['url'];
$data = array(
'id' => "",
'images' => "$img",
'back_image' => "$back_image",
'url'=>"$url"
);
$number_images = count($img);
//Inserting the data
$q = $wpdb->insert($table ,$data);
echo $img.' is updated succefully <br>';
}
Ajax 调用此代码从另一个页面发送它是:
<script>
$('#submit').submit(function(event){
event.preventDefault();
var img = $('#img').val();
var backimage = $('#back_img').val();
if(img!=''&backimage!=''){
$.ajax({
type: "POST",
url: '<?php echo plugins_url(); ?>/mngimageeffects/post.php',
data: $('#submit').serialize(),
success: function( response ) {
$('#error').html( response );
$('#mng_img').append('<div class="col-md-4"><img src="'+img+'"width="100%"/></div><div class="col-md-2"><a href="<?php $_SERVER['PHP_SELF']; ?>"><button class="btn btn-primary delete" id="delete">Upload</button></a></div>');
//delete = delete + 1;
$('#img').val('');
$('#back_img').val('');
$('#url').val('');
}
});
}else{
alert('Please Enter The Frent Image and Back Images Urls: ');
}
});
</script>
当您想在 WordPress 之外使用 WordPress 功能时,您不应该包含配置文件,而应该包含 wp-load.php
define( 'SHORTINIT', true );
require( '/path/to/wp-load.php' );
// use $wpdb after this
在 Wordpress 插件中使用 AJAX
jQuery('#submit').submit(function(event){
event.preventDefault();
var img = jQuery('#img').val();
var backimage = jQuery('#back_img').val();
var url = jQuery('#url').val();
var data = {
action: 'submit_data',
img: img,
back_img: backimage,
url : url,
};
if(img!=''&backimage!=''){
jQuery.ajax({
type: "POST",
url: ajaxurl, // if its front end else use else ajaxurl
data:data,
dataType: 'html',
success: function( response ) {
alert(response+'sdfs')
jQuery('#error').html( response );
jQuery('#mng_img').append('<div class="col-md-4"><img src="'+img+'"width="100%"/></div><div class="col-md-2"><a href="<?php $_SERVER['PHP_SELF']; ?>"><button class="btn btn-primary delete" id="delete">Upload</button></a></div>'); //delete = delete + 1;
jQuery('#img').val(''); jQuery('#back_img').val(''); jQuery('#url').val('');
},
error : function(data){
alert('Error while deleting.');
return false;
}
});
}
else{ alert('Please Enter The Frent Image and Back Images Urls: '); }
});
在PHP一侧,
add_action( 'wp_ajax_my_action', 'submit_data' ); // excutes for users that are logged in.
add_action( 'wp_ajax_nopriv_submit_data', 'submit_data' ); //executes for users that are not logged in.
function submit_data(){
global $wpdb;
$table ='wp_mnggallery';
if(isset($_POST['img'])){
$img = $_POST['img'];
$back_image = $_POST['back_img'];
$url = $_POST['url'];
$data = array(
'id' => "",
'images' => "$img",
'back_image' => "$back_image",
'url'=>"$url"
);
$number_images = count($img);
//Inserting the data
$q = $wpdb->insert($table ,$data);
echo $img.' is updated succefully <br>';
wp_die();
}
}
url应该是url:admin_url( 'admin-ajax.php' )
,如果它的前端使用ajaxurl
它会自动包含必要的文件
我正在尝试插入数据,但在从脚本 ajax 调用 seding 时遇到致命错误。请帮助我 one.Thanks 在 advance.Am 中使用它进行 Wordpress 插件开发
include_once($_SERVER['DOCUMENT_ROOT'].'/wordpress/wp-config.php' );
global $wpdb;
$table ='wp_mnggallery';
if(isset($_POST['img'])){
$img = $_POST['img'];
$back_image = $_POST['back_img'];
$url = $_POST['url'];
$data = array(
'id' => "",
'images' => "$img",
'back_image' => "$back_image",
'url'=>"$url"
);
$number_images = count($img);
//Inserting the data
$q = $wpdb->insert($table ,$data);
echo $img.' is updated succefully <br>';
}
Ajax 调用此代码从另一个页面发送它是:
<script>
$('#submit').submit(function(event){
event.preventDefault();
var img = $('#img').val();
var backimage = $('#back_img').val();
if(img!=''&backimage!=''){
$.ajax({
type: "POST",
url: '<?php echo plugins_url(); ?>/mngimageeffects/post.php',
data: $('#submit').serialize(),
success: function( response ) {
$('#error').html( response );
$('#mng_img').append('<div class="col-md-4"><img src="'+img+'"width="100%"/></div><div class="col-md-2"><a href="<?php $_SERVER['PHP_SELF']; ?>"><button class="btn btn-primary delete" id="delete">Upload</button></a></div>');
//delete = delete + 1;
$('#img').val('');
$('#back_img').val('');
$('#url').val('');
}
});
}else{
alert('Please Enter The Frent Image and Back Images Urls: ');
}
});
</script>
当您想在 WordPress 之外使用 WordPress 功能时,您不应该包含配置文件,而应该包含 wp-load.php
define( 'SHORTINIT', true );
require( '/path/to/wp-load.php' );
// use $wpdb after this
在 Wordpress 插件中使用 AJAX
jQuery('#submit').submit(function(event){
event.preventDefault();
var img = jQuery('#img').val();
var backimage = jQuery('#back_img').val();
var url = jQuery('#url').val();
var data = {
action: 'submit_data',
img: img,
back_img: backimage,
url : url,
};
if(img!=''&backimage!=''){
jQuery.ajax({
type: "POST",
url: ajaxurl, // if its front end else use else ajaxurl
data:data,
dataType: 'html',
success: function( response ) {
alert(response+'sdfs')
jQuery('#error').html( response );
jQuery('#mng_img').append('<div class="col-md-4"><img src="'+img+'"width="100%"/></div><div class="col-md-2"><a href="<?php $_SERVER['PHP_SELF']; ?>"><button class="btn btn-primary delete" id="delete">Upload</button></a></div>'); //delete = delete + 1;
jQuery('#img').val(''); jQuery('#back_img').val(''); jQuery('#url').val('');
},
error : function(data){
alert('Error while deleting.');
return false;
}
});
}
else{ alert('Please Enter The Frent Image and Back Images Urls: '); }
});
在PHP一侧,
add_action( 'wp_ajax_my_action', 'submit_data' ); // excutes for users that are logged in.
add_action( 'wp_ajax_nopriv_submit_data', 'submit_data' ); //executes for users that are not logged in.
function submit_data(){
global $wpdb;
$table ='wp_mnggallery';
if(isset($_POST['img'])){
$img = $_POST['img'];
$back_image = $_POST['back_img'];
$url = $_POST['url'];
$data = array(
'id' => "",
'images' => "$img",
'back_image' => "$back_image",
'url'=>"$url"
);
$number_images = count($img);
//Inserting the data
$q = $wpdb->insert($table ,$data);
echo $img.' is updated succefully <br>';
wp_die();
}
}
url应该是url:admin_url( 'admin-ajax.php' )
,如果它的前端使用ajaxurl
它会自动包含必要的文件