0

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 をチェックインしたところ、PHP スクリプトに 404 エラーがあるようですが、応答は正しいです (画像を参照)。

代替テキスト

問題のデバッグを手伝っていただければ幸いです。見つからないはずの PHP スクリプトは、http: //pastie.org/1350597で確認できます。

何がそのような奇妙な行動を引き起こすのか、私にはわかりません。前もって感謝します!

4

1 に答える 1

1

wordpress は、次の行のどこかに 404 (見つかりません) ヘッダーを設定していると思います。

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

実際の php は正しく機能しますが、wordpress はブログ投稿への URL を想定しています。include を使用する代わりに、require を使用できます。

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

wordpress のバージョンによっては、ヘッダーを強制的に 200 OK にする必要がある場合もあります。

status_header(200);
nocache_headers();

さらにいくつかの例を次に示します。

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

于 2010-12-06T01:05:02.390 に答える