サポート

フォーム管理プラグイン複数設置について

やぎ (2016/03/12 23:26)

設置URL : http://※※※/index.php

フォームを複数設置したくデフォルトの「form.html」(id:form)の他に「form2.html」(id:form2)を作り

templates/plugins/form/form/ 内にフォームIDをファイル名としたHTMLファイルを作成すると、それが優先的に読み込まれます。
具体的には、フォームIDが sample のフォームを作成した場合、templates/plugins/form/form/sample.html があるとそれが優先的に読み込まれます。sample.html は templates/plugins/form/form.html をコピーして作成し、それから編集すると楽です。

上記の指示通り、templates/plugins/form/form/の中に「form2.html」を入れidを「form2」とし登録しましたがform2.htmlが反映されません。
「http://※※※/freo/index.php/form/form2 にアクセスするとフォームが表示されます。」となってしまいサーバーエラーになってしまいます。

http://※※※/freo/index.php/form/form/form2にアクセスされるようにするにはどうしたら良いのでしょうか

ミツ (2016/03/14 11:49)

URL : http://32877.xii.jp

こんにちは。
下記を確認してください。

1.フォームプラグインを利用して作成したフォームのIDは「form2」で間違いないですか?(form/form2ではないですか?)
2.[freo/templates/plugins/form/form.html]をコピーして作成したform2.htmlは[freo/templates/plugins/form/form/form2.html]に保存されていますか?(freo/templates/plugins/form/form/form/form2.htmlではないですか?)

上記2点が両方OKであれば、[http://freo/index.php/form/form2]にアクセスした時、ID:form2のフォームが[freo/templates/plugins/form/form/form2.html]を利用して表示されるはずですが、それでもダメな場合はフォーム管理プラグインをデフォルトの状態に直すため、再度ダウンロードし、必要なファイルをアップロードしなおして下さい。

やぎ (2016/03/15 01:43)

URL : http://※※※

ミツ様

こんばんは。お忙しい中ご回答ありがとうございます。
ミツ様のご指導通りに1.フォームIDの確認2.form2.htmlの保存場所確認した所問題がなかったので
http://※※※/freo/index.php/form/form2にアクセスしましたがサーバーエラーで表示されませんでした。
再度プラグインをダウンロードしデフォルト状態に戻して試みましたが同じでした。

また、「http://※※※/freo/index.php/form/form/form2」に直接アクセスするとエラーは起きませんがform2のテンプレートが反映されずformのテンプレート(form.html)が反映されてしまいます。

こちらスクリーンショットです。(※解決したので削除)

configファイルの読み込み設定などが問題なのでしょうか?特にこのプラグイン意外の設定は変更していないのですがアドバイス引き続き頂ければ幸いです。よろしくお願いします。

ミツ (2016/03/15 03:11)

URL : http://32877.xii.jp

こんにちは。ご確認ありがとうございます。

スクリーンショットを拝見したところ、気になる点は下記の通りです。

【左上】ID確認できました。正しく作成されています。
【左中】テンプレート確認出来ました。正しく設置されています。
【左下】「freo/templates/plugins/form/form」フォルダに個別のテンプレートのないフォーム(今回の場合はID[form])には、「freo/templates/plugins/form/form.html」が適用されます。問題ありません。

ミツ (2016/03/15 03:16)

URL : http://32877.xii.jp

【右】
一行目に[http://freo/index.php/form/form2]が表示され、「form/form/form2」にならないのは正しい状態です。
通常であれば、[http://freo/index.php/form/form2]がエラーにならずに表示されるはずなのですが、今回はそこがエラーになっているのがおかしい点なので、そのエラーの理由を解明しなければなりません。

BODYタグ内は「ID「form」(form.html)が適用されている」と書かれていますが、実際はID[form2]のためのソースが表示されています。
BODYタグ内に追加と書かれているソースの一行目を見てみると、

<form action="http://freo/index.php/form/send?id=form2"~>

と、[id=form2]になっているのがその証拠です。
ちなみに、この「headタグ内に追加」及び「BODYタグ内に追加」で紹介されているソースは、フォームID[form2]の個別テンプレートを作成する際のテンプレートのサンプルです。
実際の[freo/templates/plugins/form/form/form2.html]がどうなっているかを表示している箇所ではありません。

ミツ (2016/03/15 03:16)

URL : http://32877.xii.jp

よって、下記の点をお試し下さい。

1.[freo/templates/plugins/form/form/form2.html]を削除した時に、[http://freo/index.php/form/form2]にアクセスするとどうなるか

2.[freo/templates/plugins/form/form.html]をコピーし、[form2.html]にリネームし、[freo/templates/plugins/form/form/form2.html]として保存しなおしたらどうなるか

ちなみに、form2というIDが良くないのかと思い、私の環境下で「form」「form2」というIDのフォームをそれぞれ作成し、[freo/templates/plugins/form/form/form2.html]を設置してみたところ、http://freo/index.php/form/form2でエラーにならずに表示されたので、IDがいけないというわけではないようです。
多分なにかしら[freo/templates/plugins/form/form/form2.html]が悪さをしているんじゃないかと予想しています。

やぎ (2016/03/15 04:18)

URL : http://※※※

ミツ様

夜分遅く素早いご回答ありがとうございます。
早速ご指導通りの方法で確認しました。

1.[~/form/form/form2.html]を削除後[~form/form2]にアクセスした所エラーは起きず表示されました。
(form.htmlのテンプレートが反映されています)

2.[~/form/form.html]をコピーし、[form2.html]にリネームし
[~/form/form/form2.html]として保存しなおしましたがこちらも問題なく表示されました。

[templates/plugins/form/form/form2.html]が悪さをしているのではとの事でしたのでform2.htmlのスクリーンショットと画像UPしました。宜しければご確認ください。(※削除)

ミツ (2016/03/15 12:22)

URL : http://32877.xii.jp

こんにちは。

2点確認ありがとうございました。
プラグインは正常に動いているので、やはりいけないのはform2.htmlだと思います。

form2.htmlのスクショを拝見したところ、文字コードがSHIFT-JISになっています。
freoのテンプレートの文字コードはUTF-8なので、文字コードをUTF-8にして保存しなおして下さい。
UTF-8を利用できないエディタなのであれば。UTF-8を利用できるエディタに変更して編集してみてください。

やぎ (2016/03/15 18:27)

URL : http://※※※

ミツ様

ご回答ありがとうございます。
使用しているエディタに文字コード変換できる設定ございましたので変換後freo2.htmlを保存しなおした所きちんと表示できました。

文字コードの確認までしておらず盲点でした。
ご指摘ご指導ありがとうございました。とても助かりました。

(可能でしたらお手隙の歳HPアドレス部分を削除もしくは伏せて頂けますと助かります。お手数おかけします)

追記:度々申し訳ございません。文字コードを変換でform2は無事表示する事が出来たのですが、
テスト送信しようとした所、メールアドレスを記入しているのに「メールアドレスが入力されていません。」とエラーを起こしてしましいます。必須項目をはずしても同様のエラーが起きました。
試しにform.htmlをコピーし新たにID:form3を作り[templates/plugins/form/form/]に保存して追加設置しましたがエラーは起きませんでした。

参考スクリーンショット:(削除)
考えられる原因ございましたらご指導、アドバイス頂ければ幸いです。

ミツ (2016/03/15 21:08)

URL : http://32877.xii.jp

こんにちは。

スクリーンショット48行目が[plugin_form[mail]]になっているので、[plugin_form[url]]に変更して下さい。

やぎ (2016/03/15 22:40)

ミツ様

こちらの記入ミスだったようで書き直しました所きちんと送信されました。
お手数おかけして申し訳ございませんでした。お陰でフォームの複数設置問題なく機能しております。この度は快くご回答頂き有難うございました。

返信

  • この記事に返信します。
  • 返信の際は、設置URL以外の項目は入力必須です。
投稿フォーム
名前
設置URL
本文(本文の装飾について
編集キー(投稿した記事を編集する際に使用します。)
投稿キー(スパム対策に、投稿キー を半角で入力してください。)