【m-single】メールフォームの「入力内容を確認する」がdisabledになってしまう
sakuyan > 【m-single】メールフォームの「入力内容を確認する」がdisabledになってしまう @ 2016/2/22 13:59 |
---|
お世話になっております。
原因が分からず悩んでいます、どうかお力添えくださいませ トップページのような、複数のページを合体させたページにメールフォーム設置したとき、 「入力内容を確認する」にdisabledが付加されてしまい、クリックすることが出来なくなってしまっています。 それぞれの固有ページ(/basercms/contact)などで確認した場合は、問題なくクリックできています。 下記ページで似たような現象が報告されておりますが、 こちらの状況はuchibaさんの言うjavascriptによってdisabledが付加されたものかと思っています。 [参考にさせて頂いたページ] http://forum.basercms.net/modules/newbb/viewtopic.php?topic_id=2012&forum=3#forumpost7488 ボタンがクリックできなくなるまでに行ったことは、 1.メールフォームを二つに増やした。(一つは別の固定ページの下部に追加→新しいレイアウトファイル(.php)を作成し、お問い合わせフォームではない固定ページの下に表示している状態) 2.default.phpをいじって、トップページに表示するページの数を減らした&表示するページのurlを変更した。 3.ページ上部のスライドショーを削除した。 現在、indexにある方も、別の固定ページの下部に追加したほうも、同じ状態となっております。 原因と対応策についてご教授頂ければ幸いです [該当ボタンのソース]
[default.phpの該当箇所のソース]
追加情報として、お問い合わせのindexが生成された時のレスポンスの中に、以下の記述があることを確認しました。 恐らくこいつのせいだろうとは思うのですが、どこからこいつが生成されるのかが分かっておりません。
■ BaserCMSのバージョン:3.0.9 ■ レンタルサーバー名:さくらレンタルサーバー ライト ■ スマートURLの利用: OFF ■ 設置フォルダ:ドキュメントルート/basecms/ ■ 利用しているデータベース:SQLite ■ PHPスキル(自己評価):E |
goichi > Re: 【m-single】メールフォームの「入力内容を確認する」がdisabledになってしまう @ 2016/2/22 22:20 |
---|
メールフォームを出力する記述は間違っていないように思います。原因を探るために、切り分けを行ったほうが良いかも知れません。
例えば、他のテーマ(スケルトンとか)を適用した場合、どうなりますか? |
sakuyan > Re: 【m-single】メールフォームの「入力内容を確認する」がdisabledになってしまう @ 2016/2/23 10:18 |
---|
ご返信ありがとうございます。
スケルトンで試してみましたが、同じようにdisabledになってしまっています。 スケルトンでも同じように問い合わせの個別ページの場合は問題なく使用できました。 |
goichi > Re: 【m-single】メールフォームの「入力内容を確認する」がdisabledになってしまう @ 2016/2/24 22:18 |
---|
3.0.9のm-singleをローカル環境に構築して試しましたが、掲示して頂いている方法(メールフォームを固定ページに表示させる記述)で正常にメールフォームが表示されました。
となると、サーバー環境の問題か、ブラウザの問題かという感じではないでしょうか。一度、お使いのブラウザ以外で試してみてください。(もしもfirfoxとかお使いであれば、怪しいかも知れません) また、サーバーでさくらインターネットをお使いの場合、サーバーコントロールパネルで「WAF」の設定ができると思います。今回使っているメールフォーム表示方法は、JavaScriptを使って非同期通信する感じなのですが、それがWAFで引っかかっているかも知れません。WAF設定を解除してお試しください。 |
d-kawa > Re: 【m-single】メールフォームの「入力内容を確認する」がdisabledになってしまう @ 2017/3/24 17:16 |
---|
問題のスクリプトは、
/lib/Baser/Plugin/Mail/View/Elements/mail_token.php に記述があります。 強引に disabledを取り除くことは可能ですが、必要だから入っている処理なのでしょう。 どういう条件でこのファイルが読まれるのでしょうね。 調べてみると、 /lib/Baser/Plugin/Mail/View/Helper/MailHelper.php で使われているようです。コメントから推測すると、ブラウザバック対策のような。。。 続いて /lib/Baser/Plugin/Mail/View/Elements/mail_form.php を見ると、
とありますので、この記述が問題のような気がします。 暫定処置としては上記コードをコメントアウトすることで、「入力内容を確認する」ボタンは有効になります。 (ブラウザバック対策は無くなりますが) |