Your javascript is missing an action parameter with the data: $.post(action, { name: $(‘#name’).val(), email: $(‘#email’).val(), phone: $(‘#phone’).val(), subject: $(‘#subject’).val(), comments: $(‘#comments’).val(), verify: $(‘#verify’).val(), action: ‘ajaxContacForm’ // <– added action here }, function(data){ document.getElementById(‘message’).innerHTML = data; $(‘#message’).slideDown(‘slow’); $(‘#contactform img.loader’).fadeOut(‘slow’,function(){$(this).remove()}); $(‘#submit’).removeAttr(‘disabled’); if(data.match(‘success’) != null) $(‘#contactform’).slideUp(‘slow’); } );