外部フォームでajaxと使う時、DBに保存したい

2016年5月4日 at 22:28

外部フォームに自分でフォームを作る際ですが、住所の郵便番号をajaxで引っぱってくるような場合、view側のPHPの中に直接記述するしかないでしょうか?
基本のファイルは

mailform.php
controller/mailform.php

という名前で作っています。

ブロックの場合は、view.jsやview.cssが使えますよね。
またDBに保存したいという場合もやはりブロックにするべきでしょうか?
db.xmlなどは使えませんよね?

タグ:

Re: 外部フォームでajaxと使う時、DBに保存したい

2016年5月5日 at 17:23
独自ブロックにした方が開発は楽ですね。外部フォームはあくまで、コントローラーとビューを1枚ずつサクッとアップしたいという程度の機能ですので。
 

Re: 外部フォームでajaxと使う時、DBに保存したい

2016年5月5日 at 19:55
なるほど、確認画面を出してメール送るところまでのスタティックのフォームを外部フォームでなんちゃってで作ってみました。
これにいろいろ突っ込んでもらおうと思ったのですが

http://github.com/pictron/c5-external-form-confirm

せっかくなら郵便番号をangularで引っ張って来たりしたいと思ったのですが、先々DBに保存したりと思うとブロックのほうがいいので、そうしてみます。
ま、これもなんちゃってなんですが、プログラマの人に盛大に突っ込んでもらおうと思ってるんですがね。
でもフォームを作るところは正直あまり興味がなかったり...そこの部分が大変なんですよね。
以外と要件でややこしい事言われると、フォームの部分はスタティックのほうが良かったり、以外と外部フォームいいんじゃね?と思ったのですが
むーん考えます。
 

Re: 外部フォームでajaxと使う時、DBに保存したい

2016年5月6日 at 9:07
DBに保存したデータを管理画面で見たい場合は、シングルページも用意しないといけないので、ブロックとシングルページを同封したパッケージのようにすると、db.xmlも使えますので、アップデートやアンインストールも簡易になると考えます。

また、フォームのinputタグのid属性を配列にして、投稿データをJSONでDBに保存すれば、急な変更にも対応しやすいと思います。
 

Re: 外部フォームでajaxと使う時、DBに保存したい

2016年5月6日 at 10:10
そうですね、フォームを作るところは置いておいて、まずはそこまで
validationをどう実装するかなど、そこまで考えると大変なんですが考えて見ます。
ありがとうございます。