Dont show success via ajax response in wordpress

40 Views Asked by At

I am insert data in the custom table from custom form. Data insert successfully but dont show any success message. I used the following script but i dont find out where is my issues. can any one tell me ?

function vendor_survey_email() {
    
     global $wpdb;
        $table_name = $wpdb->prefix . 'survey';

       $wpdb->insert( $table_name, array(
            'wtimeliness' => $_POST['timeliness'], 
            'wcourtesy' => $_POST['courtesy'],
            'wquality' => $_POST['quality'],
            'wlogin_name' => $_POST['customername'],
            'wlogin_email' => $_POST['custemail'],
            'storename' => $_POST['sv_storename'],
            'userid' => $_POST['customerid'],
            'wmessage' => $_POST['sv_message']
            ),
            array(
                '%s',
                '%s',
                '%s',
                '%s',
                '%s',
                '%s',
                '%d',
                '%s'
            )
        );
        echo "Message sent successfully";
        wp_die();
       
}
add_action('wp_ajax_vendor_survey_form', 'vendor_survey_email');
add_action('wp_ajax_nopriv_vendor_survey_form', 'vendor_survey_email');
?>

Ajax script

 jQuery(document).on('click', '#sv_form', function () { 
  
    
    var timeliness = jQuery('input[name="timeliness"]:checked').val();
    var courtesy = jQuery('input[name="courtesy"]:checked').val();
    var quality = jQuery('input[name="quality"]:checked').val();
    var customername = document.getElementById('customername').value;
    var sv_storename = document.getElementById('sv_storename').value;
    var custemail = document.getElementById('custemail').value;
    var customerid = document.getElementById('customerid').value;
    var sv_message = document.getElementById('sv_message').value;

    ///console.log(sv_vendor);
    
    if (timeliness == '' || courtesy == '' || quality == '' ||  sv_message =='' ) {

    jQuery('#valida_error_message').text('*All above Fields are Required');

    }else {  
        
    jQuery.ajax({
        url: ajax_url,
        type: "POST",
        //dataType: "JSON",
        cache: false,
        data: {
            'action':'vendor_survey_form',
            'timeliness' : timeliness,
            'courtesy' : courtesy,
            'quality' : quality,
            'sv_storename' : sv_storename,
            'custemail' : custemail,
            'customername' : customername,
            'customerid' : customerid,
            'sv_message' : sv_message
           
        },
        success:function(data) {
            if(data=='Message sent successfully'){
               jQuery('#message').text(data);
               jQuery("form").trigger("reset");
 
            }else{
                jQuery('#survey_error_message').text(data);
                jQuery("form").trigger("reset");
            }
        
        },
        error: function(errorThrown){
            console.log(errorThrown);
        }

    });
  }    

});

I am php and javascript is working perfectly but dont show any message. that is important

0

There are 0 best solutions below