درود به شما
مشکل من این هست که وقتی فرم رو ارسال میکنم اطلاعات اینپوت در دیتابیس ذخیره نمیشه ( فرم من سمت فرانت هست )
رکورد جدید در دیتابیس ایجاد میشه ولی فیلدهای دیتابیس خالی هستند
وقتی اینسپکت میگیرم اطلاعات توسط ایجکس ارسال میشه و وضعیت 200 هست اما وقتی var_dump()میکنم به صورت string 0 "" نمایش میده و به خاطر همین در دیتابس اطلاعات خالی قرار میگیره
کدها رو ضمیمه کردم ممنون میشم کمک کنید
// register script
function ajax_load_front_style() {
wp_enqueue_script('front-ajax', plugin_dir_url(__FILE__) . 'assets/js/front-ajax.js' , array('jquery'));
wp_localize_script('front-ajax','ajax',[
'ajaxurl'=>admin_url('admin-ajax.php'),
]);
}
add_action('wp_enqueue_scripts', 'ajax_load_front_style');
// ajax in js file
jQuery(document).ready(function ($){
$('#Front_Popup_Form_Ajax').on('submit',function(e){
e.preventDefault();
let email = $('#popup-email').val();
let mobile = $('#popup-mobile').val();
$.ajax({
url:ajax.ajaxurl,
type :'post',
data:{
action : 'add_data_form_popup',
email:email,
mobile:mobile
},
success:function (response){
console.log(response);
},
error: function(error){
}
// functions
function add_data_form_popup(){
global $wpdb;
$data_form_data_table = $wpdb->prefix . 'ajax_form_data';
$sanitize_email_popup = sanitize_text_field($_POST['ajax_email_popup']);
$sanitize_mobile_popup = sanitize_text_field($_POST['ajax_mobile_popup']);
$data = [
'ajax_form_data_email'=>$sanitize_email_popup ,
'ajax_form_data_mobile'=>$sanitize_mobile_popup
];
$format = ['%s', '%s'];
$wpdb->insert($data_form_data_table ,$data,$format);
}
add_action('wp_ajax_nopriv_add_data_form_popup','add_data_form_popup');
add_action('wp_ajax_add_data_form_popup','add_data_form_popup');
// html form