問い合わせフォームから入力し送信を行うと自動返信メールも問い合わせ内容のメールも問題なく届くのですが、thanks.htmlのページに移行しません。
送信ボタンをクリックすると「送信してもよろしいですか? OK キャンセル」が表示されOKを押すと上部にURLの表示が出てグルグルと読み込み中の表示のままでthanksページには移りません。少ししたらグルグルは消えフォームの入力画面になります。
thanksページのURLは何度も確認しているので入力間違いではないかと思います。
サーバーはロリポップです。サーバーの設定の問題なのでしょうか?
すみません。教えてください。
ダウンロードしたままで一切編集をしていないconfig.phpを、サーバに上書きアップロードし、再び送信テストをすると、どのようになりますでしょうか?
そのままアップロードして試してみましたが同じようにグルグルまわった状態でthanksページに移りませんでした。
調査していますが、現時点では原因がわかりません。
mailform.phpやclass.mailform.phpは一切編集していない状態でしょうか?
今後調査する際には毎回メールが送信されることになるので、config.phpの設定は今の初期状態のままにしておいていただけると助かります。
了解しました。初期状態のままにしておきます。
mailform.php、class.mailform.phpは一切編集していないです。
念のため再度メールフォームをダウンロードしてそのままアップロードして試してみましたが
同じ状態でした。
class.mailform.phpの8行目、
header( 'Content-Type: application/javascript' );
を
header( 'Content-Type: application/x-javascript' );
というように「x-」を追加し、UTF8 BOMなしで上書き保存し、サーバにアップロードしてから送信テストをするとどうでしょうか?
「UTF8 BOMなし」での保存方法については大丈夫だと思いますが、必要な際は以下のページを参考にしてください。
https://www.1-firststep.com/archives/2258
class.mailform.phpの8行目、
header( 'Content-Type: application/javascript' );
とありますが8行目は空白になっており
header( 'Content-Type: application/javascript' );というのがありません。
7行目はprivate $thanks_page_url = '';
9行目はprivate $send_subject = '';
となっておりますが場所はここで間違いないでしょうか?
class.mailform.php内をいろいろ探しますが
header( 'Content-Type: application/javascript' );が見当たりません。
あ、すみません。間違えました。
class.mailform.phpは初期状態のままでお使いください。
jsフォルダに入っているclass.mailform-js.phpのほうが該当ファイルになります。
class.mailform-js.php をheader( 'Content-Type: application/x-javascript' );
に変更して試しましたが変わりありませんでした。
おそらくmailform-js.phpのMIMEタイプがtext/htmlで出力されていることが原因かと思われます。
本来であればこのファイルはapplication/javascriptというMIMEタイプで出力されるはずなので、サーバ側でMIMEタイプの何らかの設定はされていますでしょうか?
詳しくないのでよくわからないのですが特に私の方では設定はしていないです。
レンタルサーバーはロリポップなのですがサーバーのMIMEタイプを確認する方法などありますか?
それ以上は私のほうではわからないので、ロリポップのサポートにお聞きください。
xserverサーバー ですが、同じの症状です。
当指導でしてみましたが、解決出来ませんでした。
ついでに、サーバ側でMIMEに何も設定してません。
WAF設定もしてません。
phpバージョン7.0
以上たに様にご報告致します。
ご報告ありがとうございます。
可能でしたら設置URLを書いておいていただけると、調査できるので助かります。
宜しくお願いいたします。