2010-12-05 1 views
0

Я использую jQuery Form plugin, чтобы создать очень простую форму контакта. Однако между ним и скриптом PHP, который я использую, существует некоторый конфликт (?).jQuery form - PHP-скрипт «не найден», но сообщение успешно отправляется

вызов супер просто, так как:

$('.contactform').ajaxForm({ 
    target: '#error', 
    beforeSubmit: function() { 
     $('#error span').remove(); 
     $('#error').append('<p class="loading">Sending your message...</p>'); 
    }, 
    success: function() { 
     $('#error p.loading').fadeOut(); 
     $('#error').fadeIn('slow'); 
    } 
}); 

он принимает метод POST из формы по умолчанию. Что происходит, скрипт застревает в «отправке вашего сообщения», хотя скрипт PHP успешно, дает ответ и отправляет сообщение правильно. Я проверил в Firebug, и, кажется, есть более 404 ошибок для PHP скрипта, но ответ правильный (см изображения)

alt text

Я хотел бы некоторую помощь отладки проблемы - PHP скрипта, который предположительно не может быть найдена здесь: http://pastie.org/1350597

Я понятия не имею, что может вызвать такое странное поведение. Заранее спасибо!

ответ

1

Я бы сказал, что WordPress устанавливает заголовок 404 (не найден) где-то в этой строке:

include "../../../../wp-blog-header.php" 

Фактические функции PHP правильно, но WordPress ожидает URL в блоге. Вместо использования включают, вы можете использовать потребуется:

require "../../../../wp-blog-header.php" 

В зависимости от версии WordPress, вы, возможно, придется также заставить заголовок 200 OK:

status_header(200); 
nocache_headers(); 

Некоторые другие примеры здесь:

http://wordpress.org/support/topic/integrating-wp-in-external-php-pages