気づいたら、ここだったスマートフォン用の表示で見る気づいたら、ここだった考えているようで、考えなしに生きてるので、気づいたらこんなことになてってた私のブログこの広告は、90日以上更新していないブログに表示しています。Tips最近めっきり寒くなりました・・・というか突然寒くなりました。Calendarの時期ですね。今回は「フォーム」について。うまく送信できないトラブルにお困りの方へ。Adventarへの寄稿です。例として、メール、名前と連絡内容だけを送信する単純なフォームをつくってみるとこんなやつねHTMLソースは最終形としてはこのようになります。/>の形式でHTMLのフォームデータとして渡します。(公式のサンプルを見たら毎回入れてあるのでそのように書きましたが、実際には最後の「送信」のフォームに付いていれば動くはずです。)・・・未だにたまにFormモジュールにidを書きたくなります。複数の画面を渡って行くときにstep#reapplyのようなstepを指定するブロックで表示する画面を指定します。これらも、サンプルではよくあるパターンで書いていますが、実際には好きな名前で指定できます。)、フォームのstepの値に注意が必要です。step=***という指定で、このデータを送信する先を指定しています。cmsではここにはそのフォームを送信した後に「バリデーションなどでエラーがあった場合」に表示されるstepを指定します。ように記述される部分)には本来遷移したい次の画面、つまりはバリデーションエラーがなかった場合に進むべきstepを指定します。何も問題がなければこのフォームデータ側のstepに画面は進んでいくことになります。submitボタンのnameにはそのデータを処理するpostモジュールの名前が書かれています。ここは普通に利用するときには決まったルール通りに記述すれば問題ありません。ACMS_POST_Form_Submitとなっています。これらの指定の関係は図にするとこのような感じです。最初のstepと次のreapplyでの指定がreapplyとconfirmで一致しているのは、いずれの画面もエラーならreapplyであり、成功すればconfirmに進みたいからです。reapplyからconfirmへは一方通行ですのでaction側の指定はなくてかまいません。独自にステップを増やしたりする場合は、特にこのようなルールを把握してくとよいでしょう。何か出てないか見てみる・・・といったところでしょうか。最近詰まったというか、毎度フォーム周りで詰まるので、まとめてみましたが、あまりすっきりまとまってないな・・・そのうちもうちょっと綺麗に説明できるようにがんばります。あ、他にも送信できなかった時に気をつけることとかあれば教えて下さい。検索プロフィールあかぎたかしです。広島のできそこないのプログラマです。majosystemsの中の人でした。)月別アーカイブリンクgithub旧ブログ2旧ブログ広島ドラゴンフライズ応援してますはてなブログをはじめよう!nisyuさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。