1.4.3を見落としてました。
戻るボタン動作確認できました。
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Tomoacさんの作成された機能拡張フォームについて
2011年6月22日 at 19:17
しかしかなりの大作になってしまいましたね。このフォームかなりの人に使ってもらえるのではないかと思います。外部フォームなどより生産性がぐっとあがります。
めっちゃ、助かってます。
@n#と#n@はまだ試していません。きっと使用するときは@@がほとんどだと思いますので隠しコマンド的な位置づけていいかも。またテストします。
現在の問題点としては
・「戻る」のリンクがconcrete5をサブディレクトリにインストールするとうまく動作しない。
・上部の管理メニューが消える。
この2点ではないでしょうか。2人のチャットルームも始めてはや1ヶ月弱。できればもっといろんな人にデバックしてもらいですね。
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Tomoacさんの作成された機能拡張フォームについて
2011年6月23日 at 7:31
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Tomoacさんの作成された機能拡張フォームについて
2011年6月23日 at 21:48
すこしだけ、ソースを見せてもらいました。気づいた点
フレームワークではいろいろな定数が用意されていることが多いです。
$_SERVER['HTTP_HOST'] などの もともとのPHPのコードなどは使わないことが多い。
concrete5でもBASE_URLという定数が用意されているようです。
concrete/config/base.php に定義されています。間違ってたらごめんなさい。
参考にされては。
フレームワークではいろいろな定数が用意されていることが多いです。
$_SERVER['HTTP_HOST'] などの もともとのPHPのコードなどは使わないことが多い。
concrete5でもBASE_URLという定数が用意されているようです。
concrete/config/base.php に定義されています。間違ってたらごめんなさい。
参考にされては。
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Tomoacさんの作成された機能拡張フォームについて
2011年6月23日 at 23:09
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Tomoacさんの作成された機能拡張フォームについて
2011年6月24日 at 15:17
いや、他のブロックを見ているときにすべて大文字のものがあったのでどこかでdefineしているじゃないかなと思って適当に探してたらあった感じ。
MVCに関しての基本は
Model->使用するテーブルの定義・バリデーションの設定。
controller->データ加工・バリデーションの実施・セーブ・メール送信・画面表示以外のものの処理。
view-> 画面表示
もともと、デザイナーがViewを加工し、プログラマーがcontrollerを加工する設計なので、controllerで画面表示のecho、print_rなどをやるとデザイナーに怒られる。
だから、controllerでの表示用オペコード(echo,print_r)はさけなければいけません。
と、僕が読んだ本には書いてありました。(はい、逃げの一手)
一度、画面が白くなったときのソースはいつのバージョンでしたか?
一度ソースを見させてください。
ところで、concrete5のformブロックのmodelはどこにあるんだろう?よくわかりませんでした。
MVCに関しての基本は
Model->使用するテーブルの定義・バリデーションの設定。
controller->データ加工・バリデーションの実施・セーブ・メール送信・画面表示以外のものの処理。
view-> 画面表示
もともと、デザイナーがViewを加工し、プログラマーがcontrollerを加工する設計なので、controllerで画面表示のecho、print_rなどをやるとデザイナーに怒られる。
だから、controllerでの表示用オペコード(echo,print_r)はさけなければいけません。
と、僕が読んだ本には書いてありました。(はい、逃げの一手)
一度、画面が白くなったときのソースはいつのバージョンでしたか?
一度ソースを見させてください。
ところで、concrete5のformブロックのmodelはどこにあるんだろう?よくわかりませんでした。
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Tomoacさんの作成された機能拡張フォームについて
2011年6月24日 at 22:57
明日じっくり検討しますが、ひとつだけ。
echoは、view.phpを、echoしているんですよ。
だから、controller.phpでview.phpを無視して出力している訳ではない。
とはいえ、行儀がいいとはいいにくいですね。
このとき正当なMVCの達人ならどう解決するのでしょうかね。
echoは、view.phpを、echoしているんですよ。
だから、controller.phpでview.phpを無視して出力している訳ではない。
とはいえ、行儀がいいとはいいにくいですね。
このとき正当なMVCの達人ならどう解決するのでしょうかね。
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Tomoacさんの作成された機能拡張フォームについて
2011年6月25日 at 12:31
文書ではなかなか説明難しいですね。
view.phpをechoしているのではなく、再度controllerを通ったview.phpを表示していることにならないかなぁ。(永久ループ状態?)
もともとの問題ではheader()が関係しているような気がします。
なぜそのような処理をしているのか不明ですが、その部分を$this->setに変更し、値渡しにするとうまくいくような・・・・やってないからわからないけど。
今日の夜ゆっくり見てみます。
view.phpをechoしているのではなく、再度controllerを通ったview.phpを表示していることにならないかなぁ。(永久ループ状態?)
もともとの問題ではheader()が関係しているような気がします。
なぜそのような処理をしているのか不明ですが、その部分を$this->setに変更し、値渡しにするとうまくいくような・・・・やってないからわからないけど。
今日の夜ゆっくり見てみます。
ソース変更してみました。
2011年6月26日 at 3:51
controller.phpは get_file_contentsの処理から
if(!$this->noSubmitFormRedirect)の処理までをコメントアウトし
$this->set("post",$post)を追加
view.phpは$_POSTで受けていたものを$postに変更しました。
ファイル添付しましたので確認して下さい。
ここまで作成していただいたので僕の知識で何とかお役に立てればいいのですが・・・
今からテストしてみます。
if(!$this->noSubmitFormRedirect)の処理までをコメントアウトし
$this->set("post",$post)を追加
view.phpは$_POSTで受けていたものを$postに変更しました。
ファイル添付しましたので確認して下さい。
ここまで作成していただいたので僕の知識で何とかお役に立てればいいのですが・・・
今からテストしてみます。
Re: Re: ソース変更してみました。
2011年6月26日 at 15:26
$postの変数の中にすべての情報を集約してありましたので、$this->set一行で解決できました。
controller.phpの$error処理に$this->set('error',$error)というのがあります。それがヒントだったのです。
view.phpの$errorがどこにも定義されていないのにエラーメッセージが入っています。これはcontroller.phpでの$errorの内容をview.phpの$errorで使用できますよという定義をしているからです。
MVCのフレームワークでは$_POSTなどはほぼ使用せず、このようなメソッドが用意されています。viewからcontrollerへの値渡しのときにも$_POSTはあまり使用しませんので探したんですけどわかりませんでした。なのでとりあえずそのまま$_POSTを使用しています。なんとなくcakephpと似ています。というか$this->setなんてそのまんま。しかし、データベースの処理のところで、そのままSQL文が書いてあったり、cakephpでは$this->モデル名->save()でバリデーションからupdateやinsertまですべてやってくれます。と違う部分もあるようなので一概には言えないけど。
それ以外に気づいた点は使用しないソースをいかしたままexitでぬけていること。僕は古い人間なのでexitやgotoは悪という考え方です。使用しないソースはコメントアウトするか削除します。とくにフレームワークはexitでどこまでジャンプするかわからないし・・・・・。
tomoacさんが作成されたソースで定数を使用できるところは使用してしまえばkatz515さんが言われているようにマーケットプレイスに出展できるのでないでしょうか。そのほうがたくさんの人にも使ってもらえるし、デバッガーも増えるし。それくらいのレベルのブロックですよ。ありがとうございした。
追伸
こんだけ暑いとパソコンやばいですよね。
controller.phpの$error処理に$this->set('error',$error)というのがあります。それがヒントだったのです。
view.phpの$errorがどこにも定義されていないのにエラーメッセージが入っています。これはcontroller.phpでの$errorの内容をview.phpの$errorで使用できますよという定義をしているからです。
MVCのフレームワークでは$_POSTなどはほぼ使用せず、このようなメソッドが用意されています。viewからcontrollerへの値渡しのときにも$_POSTはあまり使用しませんので探したんですけどわかりませんでした。なのでとりあえずそのまま$_POSTを使用しています。なんとなくcakephpと似ています。というか$this->setなんてそのまんま。しかし、データベースの処理のところで、そのままSQL文が書いてあったり、cakephpでは$this->モデル名->save()でバリデーションからupdateやinsertまですべてやってくれます。と違う部分もあるようなので一概には言えないけど。
それ以外に気づいた点は使用しないソースをいかしたままexitでぬけていること。僕は古い人間なのでexitやgotoは悪という考え方です。使用しないソースはコメントアウトするか削除します。とくにフレームワークはexitでどこまでジャンプするかわからないし・・・・・。
tomoacさんが作成されたソースで定数を使用できるところは使用してしまえばkatz515さんが言われているようにマーケットプレイスに出展できるのでないでしょうか。そのほうがたくさんの人にも使ってもらえるし、デバッガーも増えるし。それくらいのレベルのブロックですよ。ありがとうございした。
追伸
こんだけ暑いとパソコンやばいですよね。
Re: Re: Re: ソース変更してみました。
2011年6月26日 at 16:48
>$postの変数の中にすべての情報を集約してありましたので、$this->set一行で解決できました。
なるほどそれがMVCというかフレームワークをつかうメリットなんですね。
このsetがどういう仕様なのかとか、ドキュメントはあるんですかね。
MVCとかフレームワークの勉強で始めましたが、ちっとも勉強になっていなくって、おかげさまでやっとメリットがわかってきた感じですね。独学するには、なにを勉強するのがいいのでしょう。
>それ以外に気づいた点は使用しないソースをいかしたままexitでぬけていること。
元のコードにあったので、exitしてました。
元のコードも残していますので、ご参考に。
課題となっていたので残してました。次回リリースで消しますよ。
この後ととりあえずリリースします。
ところで、ダウンロードページに協力者として掲載させていただきたいのですが、twitterのアカウントとかメールとかご希望をお送りください。
#つぶれたついでに、Linuxをインストールして、KVMってのを載せて、Windowsをインストールしてみたので時間がかかってました。苦労の甲斐あって、KVMはいいですねえ。
なるほどそれがMVCというかフレームワークをつかうメリットなんですね。
このsetがどういう仕様なのかとか、ドキュメントはあるんですかね。
MVCとかフレームワークの勉強で始めましたが、ちっとも勉強になっていなくって、おかげさまでやっとメリットがわかってきた感じですね。独学するには、なにを勉強するのがいいのでしょう。
>それ以外に気づいた点は使用しないソースをいかしたままexitでぬけていること。
元のコードにあったので、exitしてました。
元のコードも残していますので、ご参考に。
課題となっていたので残してました。次回リリースで消しますよ。
この後ととりあえずリリースします。
ところで、ダウンロードページに協力者として掲載させていただきたいのですが、twitterのアカウントとかメールとかご希望をお送りください。
#つぶれたついでに、Linuxをインストールして、KVMってのを載せて、Windowsをインストールしてみたので時間がかかってました。苦労の甲斐あって、KVMはいいですねえ。
Re: Re: Re: Re: ソース変更してみました。
2011年6月26日 at 17:12
hgcsynさんに修正&解決いただけましたので、Version 1.5 としてリリースしました。
注意メッセージ削除しました。
以下からダウンロードしてください。
http://concrete5.tomo.ac/index.php?cID=81
注意メッセージ削除しました。
以下からダウンロードしてください。
http://concrete5.tomo.ac/index.php?cID=81
Re: Re: Re: Re: Re: ソース変更してみました。
2011年6月26日 at 22:49
>なるほどそれがMVCというかフレームワークをつかうメリットなんですね。
いいえ、そこはそれほどではありません。値渡しの場合はviewからcontrollerへの方がメリットを感じます。
フレームワークを使用する利点はセキュリティ問題とバリデーション、データベースとの連結を容易にできるということです。デメリットは遅い。
>このsetがどういう仕様なのかとか、ドキュメントはあるんですかね。
気にしないほうがいいです。そういうもんやと思ったほうがいいです。
>元のコードにあったので、exitしてました。
意見が分かれるところです。構造化プログラミングという概念があるのですが、古い人間なのかもしれません。ごめんなさい。
>独学するには、なにを勉強するのがいいのでしょう。
おすすめはcakephpです。僕も独学なので役に立つかどうかわかりませんが、もしよろしければなんでも聞いてください。
ちなみにlinuxはubuntuですか?apt-getでcakephpがインストールできたように思います。
>ダウンロードページに協力者として掲載させていただきたいのですが、twitterのアカウントとかメールとかご希望をお送りください。
実はtwitterのアカウントは最近取得したばかりで、よくわかりません。
使いかた教えてもらえないでしょうか。一応「acliss19xx」です。
view.phpののリンク先を定数に変更されました?今のままではSSLのページでは使用できません。
それよりマーケットプレイス行っちゃいましょう。せっかくリーダーから誘われていることですし、こんなすばらしいブロックをホームページだけでの公開ではもったいないですよ。
いいえ、そこはそれほどではありません。値渡しの場合はviewからcontrollerへの方がメリットを感じます。
フレームワークを使用する利点はセキュリティ問題とバリデーション、データベースとの連結を容易にできるということです。デメリットは遅い。
>このsetがどういう仕様なのかとか、ドキュメントはあるんですかね。
気にしないほうがいいです。そういうもんやと思ったほうがいいです。
>元のコードにあったので、exitしてました。
意見が分かれるところです。構造化プログラミングという概念があるのですが、古い人間なのかもしれません。ごめんなさい。
>独学するには、なにを勉強するのがいいのでしょう。
おすすめはcakephpです。僕も独学なので役に立つかどうかわかりませんが、もしよろしければなんでも聞いてください。
ちなみにlinuxはubuntuですか?apt-getでcakephpがインストールできたように思います。
>ダウンロードページに協力者として掲載させていただきたいのですが、twitterのアカウントとかメールとかご希望をお送りください。
実はtwitterのアカウントは最近取得したばかりで、よくわかりません。
使いかた教えてもらえないでしょうか。一応「acliss19xx」です。
view.phpののリンク先を定数に変更されました?今のままではSSLのページでは使用できません。
それよりマーケットプレイス行っちゃいましょう。せっかくリーダーから誘われていることですし、こんなすばらしいブロックをホームページだけでの公開ではもったいないですよ。
Re: Re: Re: Re: Re: Re: ソース変更してみました。
2011年6月27日 at 6:01
>view.phpののリンク先を定数に変更されました?今のままではSSLのページでは使用できません。
わすれてました。これでいいでしょうかね。添付します。
>おすすめはcakephpです。僕も独学なので役に立つかどうかわかりませんが、もしよろしければなんでも聞いてください。
cakephpの本は昨年だったか買って持ています。買ったまま本棚に挟まってます。
引っ張り出して勉強してみます。
>実はtwitterのアカウントは最近取得したばかりで、よくわかりません。
>使いかた教えてもらえないでしょうか。一応「acliss19xx」です。
hgcsynのところをクリックしたらホームページのURLが載ってましたのでそれも載せておきます。
ところで、写真がのっていましたがこの方がご本人ですか?
>それよりマーケットプレイス行っちゃいましょう。せっかくリーダーから誘われて>いることですし、こんなすばらしいブロックをホームページだけでの公開ではもっ>たいないですよ。
遠慮理由は書いてあるとおりです。いまも変わっていませんが、hgcsynさんが広報担当として出演いただき、私は裏方で修正をするとういのならいいですよ。
わすれてました。これでいいでしょうかね。添付します。
>おすすめはcakephpです。僕も独学なので役に立つかどうかわかりませんが、もしよろしければなんでも聞いてください。
cakephpの本は昨年だったか買って持ています。買ったまま本棚に挟まってます。
引っ張り出して勉強してみます。
>実はtwitterのアカウントは最近取得したばかりで、よくわかりません。
>使いかた教えてもらえないでしょうか。一応「acliss19xx」です。
hgcsynのところをクリックしたらホームページのURLが載ってましたのでそれも載せておきます。
ところで、写真がのっていましたがこの方がご本人ですか?
>それよりマーケットプレイス行っちゃいましょう。せっかくリーダーから誘われて>いることですし、こんなすばらしいブロックをホームページだけでの公開ではもっ>たいないですよ。
遠慮理由は書いてあるとおりです。いまも変わっていませんが、hgcsynさんが広報担当として出演いただき、私は裏方で修正をするとういのならいいですよ。
添付:
view-1.5.1.zip
Re: Re: Re: Re: Re: Re: Re: ソース変更してみました。
2011年6月27日 at 7:49
>写真がのっていましたがこの方がご本人ですか?
うちの社長の写真ですか?僕はもっと若いっす。
>hgcsynさんが広報担当として出演いただき、私は裏方で修正をするとういのならいいですよ。
それでもいいですよ。しかし、毎週木曜日は会社の定例会議があるので10時に帰れるかどうか不明です。
別件ですが、カレンダーが表示できるヘルパーがありました。ただ、僕的には今のままでも十分です。
$dtt = Load:helper('form/datetime');
$dtt->date($name, $value, $calendarAutoStart) ;
$nameは名前,$valueは初期値,$calendarAutoStartはTrueにするとカレンダー表示されます。
ちなみにほかにもほしいブロックがあるのですが・・・・・。
うちの社長の写真ですか?僕はもっと若いっす。
>hgcsynさんが広報担当として出演いただき、私は裏方で修正をするとういのならいいですよ。
それでもいいですよ。しかし、毎週木曜日は会社の定例会議があるので10時に帰れるかどうか不明です。
別件ですが、カレンダーが表示できるヘルパーがありました。ただ、僕的には今のままでも十分です。
$dtt = Load:helper('form/datetime');
$dtt->date($name, $value, $calendarAutoStart) ;
$nameは名前,$valueは初期値,$calendarAutoStartはTrueにするとカレンダー表示されます。
ちなみにほかにもほしいブロックがあるのですが・・・・・。
Re: Re: Re: Re: Re: Re: Re: Re: ソース変更してみました。
2011年6月27日 at 18:09
ずばり、拡張スライドショーです。
標準のスライドショーはフェードしかできないので・・・
1枚目と2枚目の入れ替わりのときはフェード
2枚目と3枚目の入れ替わりのときはズーム
など簡単に設定できるブロックです。
すでにあったらごめんなさい。勝手なことばかりいいますが・・・・
view.phpの$_SERVER['PHP_SELF']のところは DIR_REL.'/'ではないでしょうか。
もう、フォームブロックも完成ですのでこのスレッドは一度締めたほうがいいですよね。ちなみに36歳、奈良県在住です。
標準のスライドショーはフェードしかできないので・・・
1枚目と2枚目の入れ替わりのときはフェード
2枚目と3枚目の入れ替わりのときはズーム
など簡単に設定できるブロックです。
すでにあったらごめんなさい。勝手なことばかりいいますが・・・・
view.phpの$_SERVER['PHP_SELF']のところは DIR_REL.'/'ではないでしょうか。
もう、フォームブロックも完成ですのでこのスレッドは一度締めたほうがいいですよね。ちなみに36歳、奈良県在住です。
Re: Re: Re: Re: Re: Re: Re: Re: Re: ソース変更してみました。
2011年6月28日 at 20:31
修正して、Version 1.5.2 としてリリースしました。ほんとありがとうございました。
まだ私自身で改良したいところはありますが、ぼちぼちやります。
新しいブロックに件は、新規スレッドをたててください。
口コミサイトは作る意味はなさそうですので、それを調べてみます。
ご存知でしたか私も奈良県です。勤務地は、お隣の大東市です。
このスレッドは最後にしましょう。ほとんど、ほとんど2人だけでしたが、関係者には結構知名度があがったと思いますし。
まだ私自身で改良したいところはありますが、ぼちぼちやります。
新しいブロックに件は、新規スレッドをたててください。
口コミサイトは作る意味はなさそうですので、それを調べてみます。
ご存知でしたか私も奈良県です。勤務地は、お隣の大東市です。
このスレッドは最後にしましょう。ほとんど、ほとんど2人だけでしたが、関係者には結構知名度があがったと思いますし。
Your post has been saved and will be published after approval by the forum moderator.
tomoac
Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Re: Tomoacさんの作成された機能拡張フォームについて
これは対策してみたつもりなのですが、だめですか。
再現するには、concrete5をサブディレクトリにインストールしてみないとだめかな。
>外部フォームなどより生産性がぐっとあがります。
>めっちゃ、助かってます。
それはありがとうございます。励みになります。