Top > experimental > table_edit2.inc.php

*table_edit2.inc.php実験ページ [#g7d15e8e]

こちらでテストしてみて下さい。

-upk~
こんな感じですけど。

とか、ここに avg や sum を表示。だと、難しいでしょうかね? ちょっと、これはいい加減な例ではありますけどね。まぁ、縦・横程度かなぁ。私が作った googlemap のプラグインでも、同じようにプラグインのみが解釈する指令って作ったりしたので、そんな感じで対処できるかなぁ。程度なんですけどね。% も、#,& と既に使っていたので、まぁ、適当な特殊記号を選んだ程度ではありますが。-- [[upk]] &new{2006-09-13 (水) 03:30:42};
- ふむむ、表計算的利用方法かな…、今の仕様なら$cells[y][x]という変数に格納して処理していますので計算方向固定(計算は常に式セルの上と左のみ)なら実現は楽だと思います。右側とか下のセルを計算となると、いったん演算格納処理が終わってから再度演算命令判定ですかね…、演算命令を含む演算命令とか出てくると順序判定とかも出てきますね…。 -- [[taru]] &new{2006-09-13 (水) 08:34:56};
- ↑の計算方向固定で作ってみました。%は除算でしたっけ?calcプラグインにも含まれているので、@にしてみました。&br;
-プラグインに渡すオプション
 calc=1 表組のセルで計算を行う  comma 数字に3桁単位で(,)カンマを付ける
-セル内に使える関数
 横左側の指定範囲を合計する @sum_r(start列番号,end列番号)
 縦上側の指定範囲を合計する @sum_c(start行番号,end行番号)
 指定位置のセル値を複写する @cell(行番号,列番号)
-設置例
#table_edit2(edit=on,calc=1,auth_check_off,comma,table_mod=open){{
|列テスト|42849602579|11111|い|あ|||||||||1|
||90402720817||||&color(Yellow){1};|||これはどうでしょう?|||||2|
|FIRE|60983573255||||0||||||||3|
|さば|78286304097||||2|5|1|1|12|@sum_r(2,6)|て|2||
|にんじん|18830869686||||5|4|25|3|7|@sum(r)|て|3||
|意味無く計算|21692016901||||4|200|5|@sum_r(2,3)|@cell(4,2)*@cell(4,3)+@cell(4,4)|この行の田中×鈴木+中島|て|4||
|ddd|18405770444|7777|||||aa|||||||
|行は横にフィールド並ぶとイメージしやすい?|14594725697||||@sum(c)|||||||||
|&color(Maroon){''3''}; (^^) ||||||||||||||
}}
 後から気づいたけど上のコメントから推測するに、もしかしてgooglemapプラグインのコードに参考になる部分があったのかな…、まぁ動いたしいいかな…。 -- [[taru]] &new{2006-09-14 (木) 00:26:37};
-これはOKかな?
#table_edit2(row=sum,column=sum,comma,table_mod=open,auth_check_off,edit=on){{
|あああ|@|1|てすと|RIGHT:|LEFT:|CENTER:|||||a|c
}}
-同じもの
||RIGHT:|LEFT:|CENTER:||||c
|A|右|左|中央|E|F|G|h
|bb|4|5|3*6|5|7|~1|
|あ|3000|4000||500|444|5600|
|aa|5|6+4|9*10|5|4|3|
なんだか違うみたいですね。-- [[upk]] &new{2006-09-15 (金) 14:30:39};
- calc計算が行われたcellにRIGHT:が置かれる件かな? -- [[taru]] &new{2006-09-15 (金) 14:58:12};
--そうです。現状だと h と c が指定可能なので、その c の対応ってところですかね。-- [[upk]] &new{2006-09-15 (金) 16:47:35};
--- ふむむ、確かに書式を指定する意味が無くなるのはまずいですね。cの指定がある場合は解除するように変更します。ご指摘ありがとうございました。 -- [[taru]] &new{2006-09-15 (金) 17:30:29};
-- 対応プログラムでサーバ上のファイルを更新しました。現状だと c が設置してある場合はその書式に従う、 c が無い場合はcalcが実行されたセルに右寄せを適用するになっているかと思います。 -- [[taru]] &new{2006-09-15 (金) 20:25:27};

***列編集title_cオプションテスト Ver1.3 [#g6bbcebc]
 #table_edit2(title_c=2){{
  ~ 略 ~
#table_edit2(form=text|text|text|text|text|textarea,title_c=2,table_mod=close){{
-商品A
|コード|品名|単価|tetete|数量|価格|aaa||h
||||||でない|||
|[[a001]]|みかん|100||30|||おお&br;これは&br;つかえる?|
|a002|すいか|200|||||てst|
|a003|バナナ|150||||いいよいいよお||
-商品B
|b002|ライター|100|1|||
|||||||
|hate|sate|dou|natteru|nokana||
|b003|灰皿|250|3|||
}}
- とりあえずこの機能は問題なく動作しているかな… -- [[taru]] &new{2006-11-12 (日) 17:33:30};
***textareaオプションテスト Ver1.3 [#v946e635]
 #table_edit2(textarea){{
#table_edit2(textarea,table_mod=close){{
|どうやら&br;table_edit2の範囲内に複数tableを置いた時に&br;tableの列数が違うと先頭のtableの列数しか&br;&br;formの設定が有効にならないようだ|メモリエラーが…&br;でてますよね?|1|
|おお、これならええじゃないですか&br;表記入するときに&br;&br;って毎回入れるの辛いし|テスト&br;|2|
|追加|追加2|3|
|編集してて%%%気づい%%%たの&size(50){だが};編集アシストボタンも欲しい'''かも'''…&br;まぁ今回''はこの''くらいで&color(Red){止め};てバグ潰し等して、様子を見ます。|本家で設置できんとよ。|4|
|1|2|3|
|テス|テス|テス|
}}
***formオプションテスト Ver1.3 [#nc05f662]
form=のオプションは必ず , で終わるようにして下さい。((正規表現が苦手なのです (..; ))
 #table_edit2(form=text|textarea|textarea,title_c=1){{
#table_edit2(form=text|textarea|textarea,title_c=1,table_mod=open){{
#table_edit2(form=text|textarea|textarea,title_c=1,table_mod=close){{
|グループ名|スタッフ|作業|特攻|h
|Aチーム|田中&br;鹿島&br;吉田&br;早川|S地区解体&br;P倉庫管理&br;D通路確保|Ateam|
|グループ| スタッフ &br;|''作業 ''|特攻|
|Bチーム|ジョセフ&br;ナンシー&br;キャサリン|バーベル移動&br;飲料水調達&br;電源確保|B|
}}
***初期settingサポート機能テスト Ver2.0 [#b98df70c]
 #table_edit2
#table_edit2(edit=on,table_mod=close){{{
|hoge|3|てすと||||
|[[リンク名:http://hoge]]||||||
|1||2|3|4|5|
|1||2|3|||
|||||||
|||||||
|||||||
|||||||
}}}
***新機能textエリアの規定値テスト Ver2.0 [#he9d8120]
>#table_edit2(,no_null=1,form=text=名前を入力してください|select=_Aチーム_Bチーム_Cチーム_Dチーム|radio=_男_女|textarea=取得スキル、タイプを簡潔に記入,td_edit=off){{{

#table_edit2(,no_null=1,form=text=名前を入力してください|select=_Aチーム_Bチーム_Cチーム_Dチーム|radio=_男_女|textarea=取得スキル、タイプを簡潔に記入,td_edit=off,table_mod=open){{{
|名前|チーム|性別|備考|h
|名前を入力してください|Aチーム||取得スキル、タイプを簡潔に記入①|
|名前を入力してください|Aチーム||取得スキル、タイプを簡潔に記入&br;ref();|
|名前を入力してください|Aチーム||取得スキル、タイプを簡潔に記入|
|田中|Bチーム|男|取得スキル、タイプを簡潔に記入&br;&br;テスト|
|名前を入力してくださいmm|Aチーム|女|取得スキル、タイプを簡潔に記入|
|20110308|Aチーム||取得スキル、タイプを簡潔に記入3がつ|
}}}
***test table [#ef27bec0]
#table_edit2(calc=1,edit=on,comma,table_mod=close){{{
|BGCOLOR(#dee):|RIGHT:30|RIGHT:30|RIGHT:30|RIGHT:SIZE(16):50|addcol|c
|BGCOLOR(#dff):table test|a|b|c|sum(r)||h
|line1|2|6|4|@sum(r)||
|line2|1|9|3|@sum(r)||
|line3|2|8|5|@sum(r)||
|sum(c)|@sum(c)|@sum(c)|@sum(c)|@sum(c)||
}}}
***test table csv [#m60f06e8]
#table_edit2(calc=1,edit=on,comma,table_mod=open){{{
|BGCOLOR(#dee):|RIGHT:30|RIGHT:30|RIGHT:30|RIGHT:SIZE(16):50|c
,BGCOLOR(#dff):table test,"a,Data",b,c,sum(r)
,line1,2,6,4,@sum(r)
,line2,1,9,3,@sum(r)
,line3,2,8,5,@sum(r)
,sum(c),@sum(c),@sum(c),@sum(c),@sum(c)
}}}
***Escape comments test [#q812ddc0]
#table_edit2(calc=1,edit=on,comma,table_mod=open){{{
//fomat
|BGCOLOR(#dee):|RIGHT:30|RIGHT:30|RIGHT:30|RIGHT:SIZE(16):50|c
//header
|BGCOLOR(#dff):table test|a|b|c|sum(r)|h
//data
,line1,2,6,4,@sum(r)
,line2,1,9,3,@sum(r)
,"line3 aa,bb,cc",2,8,5,@sum(r)
,"a,b,c",,,,
//total
,sum(c),@sum(c),@sum(c),@sum(c),@sum(c)
}}}
*test abs_c [#ja168373]

#table_edit2(td_edit=off,tr_edit=on,auth_check_off,calc=1,comma,abs_c=3,table_mod=close){{
|1|2|3|4|h
|111|122|123|124|
|224|8000|@cell(2,1)-@cell(2,2)|@sum(r)|
|5000|2500|@cell(3,1)-@cell(3,2)|@sum(r)|
|6700|9000|@cell(4,1)-@cell(4,2)|@sum(r)|
|-2566|1500|@cell(5,1)-@cell(5,2)|@sum(r)|
|111|3|4|6|
}}

計算に絶対値の値を使うべきかが迷いどころかな。一般的にはどうなのか・・・。
***コメント [#t921b41c]
- 一応、実用レベルにまで改造が完了したかな?もう少し調整したら新バージョンを公開できるかと思います。&br;textarea内で改行を行うと&br;に置き換える事でインラインを守ります。また&br;は編集時に改行コードに置き換えます。 -- [[taru]] &new{2006-11-14 (火) 00:41:56};
- 今現在、機能停止中でしょうか? -- [[eri]] &new{2007-03-24 (土) 00:53:48};
- すみません。テストバージョンのチェックしていました。table_edit2テストバージョンがPHP5で動作しないプログラムを含んでいたようです。 -- [[taru]] &new{2007-03-24 (土) 01:02:25};
-- アップしたプログラムにミス記述(バグ)がありました。orz -- [[taru]] &new{2007-03-24 (土) 01:49:08};
- XPSP2 IE6.0.2900.2180;SP2;でアクセスすると正常更新できますが、Win2KSP4 IE6.0.2800.1106;SP1;でアクセスするすると、編集・追加ともテーブルのあるページの先頭に戻ってしまい、編集画面が表示されません。ブラウザに依存するのでしょうか? -- [[eri]] &new{2007-03-25 (日) 03:02:48};
-- あれ…、私の開発環境がWin2KSP4 IE6.0.2800.1106;SP1;を使っているのですが、その現象はこちらのサイトで起きているのかな?(同じ環境を持っているので詳しく調べたいです) -- [[taru]] &new{2007-03-25 (日) 13:07:31};
- 現象はtaruさんのサンプルページです。自宅サーバーがインストールされてるPCからのアクセスのみが、上記挙動をしています。自宅イントラ内の別Win2KPCからは、問題なく更新できました。ブラウザの設定はまったく同じなのですが (T-T  -- [[eri]] &new{2007-03-26 (月) 02:39:01};
-- 状況報告ありがとうございます。原因がだいたい予測できました。当サイトの設定を変更しましたので確認してみてください。&br;
 今回の状況原因はどうやらファイアウォールにより$_SERVER['HTTP_REFERER']からのリンク元返信が遮断されたようです。&br;
 $_SERVER['HTTP_REFERER']は、ブラウザによって使えない事を知っていたのですが、ファイアウォールを設定しているパソコンでも使えない事は、今回はじめて知りました(勉強不足でしたorz)。現在のパソコンにファイアウォールが設定されている事は当たり前となりつつあるので、$_SERVER['HTTP_REFERER']による不正処理チェックは、初期設定で外しておく事にします。[[PukiWiki関連にもあったのでリンク>pukiwiki.dev:PukiWiki/1.4/ちょっと便利に/リンクを別窓で開く/添付ファイルの直リンク禁止]]&br;
 今回の問題に対応したバージョンは今晩にでもアップします。 -- [[taru]] &new{2007-03-26 (月) 12:37:35};
- ウァォ!素早い対応ありがとうございます。今仕事中なんですが、家に帰る楽しみができました (^^; このような便利なソフトを、GPLで供給くださる開発者には本当に頭が下がります。 -- [[eri]] &new{2007-03-26 (月) 16:11:40};
- 予想原因が的中していれば嬉しいのですけどね (^^) 。&br; PukiWikiプラグイン開発の醍醐味は自分が公開しているプラグインを使って頂いているサイトを見つけた時ですね。どんなに頑張って作っても使って貰って役立っていないと自己満足で終わってしまいますからねw。&br; GPLはイイデスヨ、PukiWikiのプラグインは殆どGPL系ですから、参考にしまくりです。 -- [[taru]] &new{2007-03-26 (月) 22:06:57};
- ビンゴでした。お陰でtaruさんテストページで問題ナッシングです。と喜んだのも束の間、自サーバに入れたt.edit2で、ちょっと動作のおかしな所があるので相談です。&br;table_edit2-1.9/PukiWiki-i18n/PHP 520/win2kの環境で自サーバを立てたのですが、編集内容を更新すると、もれなくFrontPageに飛んでしまいます。この時アドレスバーはFrontPageではなく、テーブルのアドレスを表示。テーブルのあるページに戻ると、更新は正常に完了しています。PHPの設定が悪いんか?と1日悩んだんですが、???です。 --  &new{2007-03-28 (水) 01:06:46};
- 問題の原因を調べようとコード確認したところ別件ですがcancel処理のコード順序を間違えている事に、気づいてしまった。この状態でも問題なく動作するから困ったものだ…。&br; さて、今度の問題は難しそうですね。一応、当たりをつけるとheader('Location: ' の処理じゃないかと予想しています(というか書込み後はこれしか処理していません。)。この処理自体はPukiWikiのedit.inc.phpと殆ど同じですが、編集終了後に表組み近くに戻る処理(アンカーにジャンプするための#TableEdit2TableNumber)を追加しています。 という事で、編集後、ページに戻る処理動作だけに変更した&ref(table_edit2.inc.php.1.9.zip.tgz);を一度、試してみて下さい。 -- [[taru]] &new{2007-03-28 (水) 22:00:24};
- ありがとうございます。無事動作しました (^-^ 編集位置に戻ってくれる機能は凄く便利なので、対応して頂く日を楽しみにしています。 -- [[eri]] &new{2007-03-29 (木) 00:18:25};
-- Windowsのwebサーバーではheader('Location:~にアンカーを含めると動作不良の原因になるのですかねぇ…。Linux系サーバに設置する場合であればdefine('PLUGIN_TABLE_EDIT2_ANCHR_JUMP', 1);とする事で、編集後アンカーに飛ぶようにしています。 -- [[taru]] &new{2007-03-29 (木) 08:29:21};
- pukiwiki-1.4.7_notb_utf8では動作しないのですが、どうすれば良いのでしょうか・・・ -- [[かず]] &new{2007-08-14 (火) 22:50:57};
-- どのように動作しないのでしょうか? -- [[taru]] &new{2007-08-14 (火) 23:59:23};
-- 簡単な動作テストをしてみましたが特に問題ないようです。&br;pukiwiki.ini.phpにて複数行プラグインを利用可能にする設定をしてみてください。
 define('PKWKEXP_DISABLE_MULTILINE_PLUGIN_HACK', 0);
ちなみに本家PukiWikiでは日本語メッセージや入力ヘルパーには対応していません。 -- [[taru]] &new{2007-08-20 (月) 12:41:43};
- はじめまして。table_edit.inc.phpではソート機能がありましたが。こちらには搭載されておりますでしょうか?こちらに乗り換えようと思ったのですが、ソートに関する説明がないようでしたので、質問させてください --  &new{2008-02-23 (土) 05:27:52};
-- 残念ながらtable_edit2.inc.phpにはソート機能を持たしていません。(実装はそれほど難しくないと思いますが必要も無かったので)&br;ですが、[[diary/2006-11-08]]に置いてあるsortabletable.inc.phpを導入すると閲覧者によるソートが可能です。(初期表示のソートは不可)
 #table_edit2(td_edit=off,sort=Number|String|String){{{
#table_edit2(td_edit=off,sort=Number|String|String,table_mod=open){{{
|数字|英字|ひらがな|h
|5111|enase|そ|
|123|mm|えび|
|73333|tuy|し|
|6666|ikuy|さ|
|14444|byu|す|
|733|tuiy|し|
|3333|juy|う|
|666|ikuuy|さ|
|1444|bhyu|す|
}}}
  -- [[taru]] &new{2008-02-25 (月) 12:41:41};
- ご回答ありがとうございます(._.)実は当方本家の1.4.6にて稼働しているものでして、教えていただいたsortabletable.inc.phpの導入にはsortabletable.jsが必要とのことでしたのでスキンフォルダにsortabletable.jsを試しにつっこんでみたのですが残念ながらソート機能は動作しませんでした。親切にご教授いただきどうもありがとうございました --  &new{2008-02-26 (火) 10:31:06};
-- 日記のコメントページ[[Note/diary/2006-11-08]]に本家1.4.7に設置するためのsortabletable.inc.php改造方法を記載しています。regionプラグインで隠れていますが・・・ (^^; 。またヘッダを「h」で明示しないと動作しない作りになっています。 -- [[taru]] &new{2008-02-26 (火) 17:48:55};
- おかげさまで無事ソートできるように設置できました。本当にありがとうございます --  &new{2008-02-29 (金) 15:52:37};
- 重ねて試してみたところEnable Filterも動作しました。項目ごとに編集ができて・ソートもできて・フィルタリングもできて、一気に高機能な表になってビックリしました。感謝です! --  &new{2008-02-29 (金) 16:14:39};
-- よかったです。お疲れ様です。フィルタも使えるようにしていたのか・・・忘れていました。 -- [[taru]] &new{2008-02-29 (金) 22:00:18};
----
* tarch [#p33ac7f8]
#table_edit2(td_edit=off,tr_edit=on,auth_check_off,comma,table_mod=close){{
|件名|解析方法|解析結果|備考|h
|aaa|aaa|aaa|aaa|
|||||
|A|ブランチコピー|未解決||
|B|マージ|不満||
|C|クリエイト|満足||
|D|デリート|完璧||
}}

----


#table_edit2(edit=on,calc=1,auth_check_off,comma,table_mod=open){{
||123123123||1|山田|鈴木|中島||合計|h
|さば|||2|5|BGCOLOR(#606060):グレー背景|1|12|@sum_r(2,6)|
|1|||1|1|1|1|1|1|
|にんじん|||3|4|25|3|7|@sum(r)|
|意味無く計算|||4|200|5|@sum_r(2,3)|@cell(4,2)*@cell(4,3)+@cell(4,4)|この行の田中×鈴木+中島|
|1|||2|3|4|5|BGCOLOR(RED):|7|
|あ|b|c|d|え|f|g|h|い|
}}
-  (^^)  (^-^  (^Q^  (..;  (^_- テストです --  &new{2010-03-25 (木) 17:19:59};
-  (^^)  (^-^  (^Q^  (..;  (^_- テストです --  &new{2010-03-25 (木) 17:20:28};

#comment

Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup Referer   Help   RSS of recent changes