Top > PukiWiki > make > table_edit2.inc.php

table_edit2.inc.php Edit

目的表組編集の支援ツール
対応バージョン1.4.7plus-i18nで確認
作成者taru
公開日2006-9-9 (土) 12:07:52(仮公開)
ライセンスGPL

進行状況を整理するために、仮公開いたします。

進行状況 Edit

予定(案)状況発案日完了日Ver
編集時にformオプションを使って添付ファイル参照を作れないかrefプラグイン等の利用を検討'07/07/02
①行編集時の編集項目タイトルを指定行に
②formオプションのradio、select使用時に選択項目に空白を表示させない
③小数点等の数値書式を指定列限定に
eriさん、ハルさんから提案頂きました。

遅くなりましたが簡単だったので数時間で対応できました。(CSV追加の作業を行っていたため、改造は旧コードになるので対応を見送っていました)
'07/05/15-'07/05/24
コメントより
'07/06/302.1
行列の編集・追加ボタンの表示を自由に制御できるオプションの追加対応済み
(define設定で指定することもできますが、非表示指定は、オプションでの変更が利用できなくなります。)
'07/02/25'07/03/241.8
#table_editのみ記述したときにオプション設定のフォームを展開する。
行、列の数値記入欄に数字を入れると表組み枠を作成する
試験的に公開を開始しました。'07/02/25'07/04/142.0
formオプションにデフォルト値を設定できるように例えばform=text=なまえ|text=住所,
というオプションも可能です。
完了
'07/02/25
コメントより
'07/04/142.0
追加ボタンで編集画面に切り替わる。
キャンセルを押すと追加はされない。
この時削除ボタンは表示しない。
編集関連の仕様を変える時が一番難しく思います。
(列、行、複数テーブルを考えないといけないからorz)
'07/02/05
コメントより
'07/03/241.8
csvデータ生成、取込み
書式対応は無駄が多いため「別機能による変換」を考えてみます。
別のプラグイン作業中ですorz
やっと形になりました。後は微調整が必要だなぁ
'06/12/06
upkさんからの提案
'07/06/302.1
どうやら「"」を表組み中に記入している個所があるとそれ以降の文字をtable_edit2.inc.phpの編集で取込む事が出来ないようです(書込み時はOK)「"」のhtml記述を「'」に変えると今度は「'」文中に入れた時に同じ現象が発生します。どうしたものかなぁorz
Ver1.3で追加したtextareaオプションを記述しておけば、この問題を回避する事ができるようになりました。
06/10/09'06/11/141.3
行・例の合計とか平均 upkさんからのアイディア少しずつ実験はしてみようかと思います。列編集機能が先になるかなぁ…、
セル内演算機能、セル内専用関数の実装 完了
06/09/10
06/09/13
06/09/140.7
c0.2
f0.1
タイムスタンプの更新抑止を選ぶ機能upkさんのアドバイスにて、行追加、編集モードの表示・非表示切替は強制notimestamp。行編集時はチェックボックスで選ぶことができるようにしました。
完了
06/09/1006/09/110.6
行編集リンクの表示、非表示制御ボタンupkさんからアイデアを頂きました。
完了
06/09/1006/09/100.5
編集画面のテキストエリアサイズ defineにて変更可能完了(サイズがデフォルトだと編集しにくいと思い急遽付ける)06/09/0906/09/090.2
行削除ボタン(通常ページに作ると荒らされる危険が大きいので編集ページ内に置く)行追加機能実装後 完了06/09/0706/09/100.3
列編集機能、列追加ボタン未定、落ち着いてから 複数行プラグイン内に複数の表組を作ってもそれぞれに追加・編集マークが付、独立して列の追加・編集ができるように作っています。
完了
06/09/0706/09/200.9
c0.3
f0.2
行追加ボタン(絵文字?)完了(とりあえず不便なので設置0.2、絵文字はインラインのfunctionを作ってから0.4)06/09/0706/09/100.2
0.4
1行目をタイトル行とみなし、編集時の目印にする(一行目も今まで通り編集できる)完了06/09/0706/09/080.1
convert 凍結、編集制限対象のページはeditを表示しない完了 (edit=on で編集リンク強制表示、edit=off でeditリンクを強制非表示)06/09/0706/09/080.1
action 編集制限対象のページの場合、認証チェックする完了(「auth_check_off」を入れることでチェックを外す事もできる)06/09/0706/09/080.1
action 凍結のページは処理をしない完了06/09/0706/09/080.1
editの編集呼び出しリンクにインラインプラグインを利用する見栄えなので後回し 完了06/09/0606/09/100.4
複数行範囲に表以外のソースが含まれていてもconvert_htmlに含める完了(一行足しただけ)06/09/0606/09/060.1
行ごとにチェックをつけてチェックがある行を編集未定(別プラグイン?)06/09/05
行毎に編集可能にとりあえず編集できてる06/09/0306/09/050.1

仕様 Edit

  • 表の書き始めは通常の編集で次のように書いて頂ければtable_edit2を使うことができます。
    #table_edit2{{
    |||
    }}
    • 但し、ページに認証制限や凍結が行われている場合は編集アイコンが出てきません。
    • 基本はPukiWiki整形ルールとなっています。
  • Ver2.0から入力支援機能として、書き始めに記入用のフォームが利用できます。
    #table_edit2
    上記の記入方法で利用できます。また、このオプションフォーム機能を有効にする前に:config/plugin/table_edit2/settingのような設定をしておくとさらに便利に使えます。
     差分で記入内容をコピーできますので、設置サイトの:config/にこのページを作ってください。
    (設定書式の仕様についてはこちらを参考にして下さい。)

define設定 Edit

  • table_edit2.inc.php内部の編集です。通常は変更せずそのままお使いください。(あるていど知識が無いと変更した事でトラブルが発生するかもしれません。)
    define説明備考
    define('PLUGIN_TABLE_EDIT_TEXT_SIZE', 68);編集時の文字記入欄、横サイズを指定しますVer0.2以降
    define('PLUGIN_TABLE_EDIT_TEXTAREA_ROWS_LINE', 4);textareaモードの文字記入欄、縦サイズを指定しますVer1.3以降
    define('PLUGIN_TABLE_EDIT2_TEXTAREA_COLS_SIZE', 40);textareaの入力領域幅を指定
    (以前のバージョンではtextのサイズ指定を利用していましたが不便なので分離)
    Ver1.8以降
    define('PLUGIN_TABLE_EDIT_TEXTAREA', 'text');初期モード変更。text,textareaを変更する事でオプション未指定時の初期編集モードを指定できます。Ver1.3以降
    define('PLUGIN_TABLE_EDIT_TD_SHOW', TRUE);列編集ボタンのON,OFF、を指定できます。(付けてから動作チェックは殆どしていない…)TRUE or FALSEVer0.9以降
    define('PLUGIN_TABLE_EDIT2_ADD_SHOW', 1);+マークの追加ボタンをクリックした時の処理を変更します。
    0 の時はクリックと同時に行または列を追加します。
    1 追加する内容を記入してから追加をするか選べます。
    Ver1.8以降
    define('PLUGIN_TABLE_EDIT2_CALC', 1);表計算機能を 1利用 0利用しないと設定せきるようにしました。Ver1.8以降
    define('PLUGIN_TABLE_EDIT2_HTTP_REFERER', 0);送信だけの攻撃を回避するために用意した機能ですが、ファイアウォールやブラウザの対応によって書込みが出来なくなる事もあるので、初期値は0にして外しています。Ver2.0以降
    define('PLUGIN_TABLE_EDIT2_ANCHR_JUMP', 0);編集完了後、編集前の場所に戻る機能ですが、Windows系サーバで不具合が確認されたため初期値は0にして外しています。Ver2.0以降
    define('PLUGIN_TABLE_EDIT2_CSV_UNLINK', TRUE);csvエクスポートで作られる添付ファイルの自動削除機能を利用する場合はTRUE、利用しない場合はFALSEを設定します。
    csvエクスポート機能を複数人で利用する場合はFALSEにして置いてください。
    Ver2.3以降

オプション Edit

オプション説明引数役割
edit編集ボタンのon,off、デフォルトではon*2on編集ボタンの表示。ただし、ページが読取専用、凍結の時は強制offになります。
off編集ボタンの非表示
table_mod行・列編集ボタンを表組先頭の右側にある「鉛筆」または「×」アイコンで切替を行います。open行・列編集ボタンを表示します。クリック後に、表示されている×アイコンをクリックすると非表示に変わります。
close行・列編集ボタンを非表示にします。openの逆機能
offこの機能を使えなくします
auth_check_off認証編集制限ページにおいて認証処理を行いません。
表組は誰でも編集が可能となります。ただし凍結した場合は編集不可。
無しVer1.8よりauth_check=offの記述でも対応
title_c列編集の時、指定した列がの編集セルタイトルになります。
(Ver1.3以降の新機能です)
数字列番号
title_r行編集の時、指定した行がの編集セルタイトルになります。
(Ver2.1以降の新機能です)
数値行番号
textarea表編集のフォームを<textarea>タグを使って構成します。
formオプションを追加した場合、formの定義で上書きされます。(Ver1.3以降の新機能です)
無し
form各列にform部品を指定できます。
form=text|textarea|text,
の様に | で区切って指定します。
form=のオプションは必ず , で終わるようにして下さい
(Ver1.3以降の新機能です)

form=text=バージョン|textarea=内容|text=日付,と記入すると未記入のセルに規定値を設定できるようになりました。
(Ver2.0以降)
text<input type=text />タグを使います。(標準)
Ver2.0より text=初期値の書式オプションが可能になりました。
textarea<textarea name="">タグを使用します。
テキストエリアで改行編集をした場合、改行は&br;に置き換えます。
select<select name="">タグを使用します。
select=_広島_四国_山梨 と指定する事で、セレクトオプションを記述します。
最初に_を記述するのは空白に対応するためです。
セレクトオプションで指定した以外の内容がセル内に記述されている時強制的にtextタイプになります。
radio<input type=radio />タグを使用します。
radio=_Yes_Noの形式でradioタイプを追加します。
no_nullformのradioやselectオプション使用時に定義している空白を選択項目に表示しない。
(Ver2.1以降)
1
td_edit列編集機能ボタンの表示・非表示
off非表示(Ver1.8以降)
edit編集ボタンのみ表示Ver3.0
add追加ボタンのみ表示Ver3.0
tr_edit行編集ボタンの表示・非表示off非表示(Ver1.8以降)
edit編集ボタンのみ表示Ver3.0
add追加ボタンのみ表示Ver3.0

サンプル Edit

テストはこちらで試せます。

  • サンプル1
    #table_edit2(edit=on,auth_check_off){{
    -制限を解除していますので誰でも変更できます。
    |機能|説明|形状|h
    ||||
    }}
    • 制限を解除していますので誰でも変更できます。
      作業名kうぃき列追加れつあいあいああ開始日a(^Q^終了日11進捗率 ほげっちょ状況備考testtest2tetet
      ほげほhげ
      あああへいc3
      abcdef合点c4cb
      testmuc5d
      ac123dd
      0812testt1t2t3t4
      I社導入作業ぷき一つ太郎3/53/1280%(..;テストですよ
      ゴンザレスって誰だよ 笑びー田中ついかあい明日(--;8.010項目13
      hoge
      hage
      これきたして
      結合テストこもみまし0%777
      行追加テスト追加したぜた。おお
      (^-^ (^^)
      マシン名日付備考
      1+2
      @form
      &num;
  • サンプル2
    #table_edit2(edit=on,table_mod=off){{
    -ページに制限が掛かっていますので認証ユーザーのみ変更できます。
    |機能|説明|形状|h
    |行編集機能|各行の右側にあるボタン(editと表示)をクリックするとその行の編集画面に切り替わります。|鉛筆マーク|
    |行追加機能|各行の右側にあるボタン(additionと表示)をクリックすると追加が行われます。|+マーク|
    |行編集、追加ボタンの表示、非表示切替|表組の右上にるボタンをクリックする毎に切り替わります。|×と鉛筆マークの切替|
    }}
    • ページに制限が掛かっていますので認証ユーザーのみ変更できます。
      機能説明形状
      行編集機能各行の右側にあるボタン(editと表示)をクリックするとその行の編集画面に切り替わります。鉛筆マーク
      行追加機能各行の右側にあるボタン(additionと表示)をクリックすると追加が行われます。+マーク
      行編集、追加ボタンの表示、非表示切替表組の右上にるボタンをクリックする毎に切り替わります。×と鉛筆マークの切替

Ver1.3より title textarea form のオプションが新たに増えました。 Edit

  • サンプル3
    #table_edit2(td_edit=off,title_c=2,form=text|select=_20液晶_DVD_HDD_メモリ|radio=_無_有|textarea,edit=on,auth_check_off){{
    • 制限を解除していますので誰でも変更できます。
      番号オプション選択メモ
      メモ
      DVDds
      t001メモリテストです
      てすとです2
      |テスト|メモリ1231321
      e001hhhhDVD2222
      HDDテスト
      テスト
      テスト
      e002DVD3層式が欲しい… (^-^
      e003HDD余ってる…!!
      マシン名メモリ俺様が使うぜよ

表計算機能 Edit

  • オプション
    calc=1表組のセルで計算を行う
    comma数字に3桁単位で(,)カンマを付ける
    dot=1小数第1位まで表示(数値を増やすことで変更できる。0で無し)
    format_c小数点やカンマの書式を指定列に限定する。指定列は,format_c=2|4,のように複数指定する事も可能
    (Ver2.1より追加)

関数 セル内で使用 Edit

  • 関数名の後ろに_rまたは_cがつく場合
    関数名_r横左側の指定範囲(開始列番号,終了列番号)
    関数名_c縦上側の指定範囲(開始行番号,終了行番号)
    • xを行数、yを列数とすると
      合計@sum_r(y,y) 行@sum_c(x,x) 列
      平均@avg_r(y,y) 行@avg_c(x,x) 列
      数値のセルを数える@count_r(y,y) 行@count_c(x,x) 列
      最大値@max_r(y,y) 行@max_c(x,x) 列
      最小値@min_r(y,y) 行@min_c(x,x) 列
      指定位置のセル値を複写する@cell(x,y) 絶対アドレス@cell_ra(x,y) 相対アドレス
  • Ver2.0以降より新しい関数を用意しました。
    機能関数書式
    合計@sum(オプション)cr
    数値のカウント@count(オプション)
    番号(列や行の番号を取得して表示)@number(オプション)
  • サンプル4
    #table_edit2(edit=on,auth_check_off,calc=1){{
    |||
    }}
    10030100-82100-dさだss100-261tes
    fdsフヂス
    10234168100-1test
    0
    100+fds0testable
    (^-^(T-T(^_-(^^)@cell_ra(0,5)=0
    ああ0
    2
    (^-^
    2(^Q^29.999931avg255
    88856789320893(^^) (^^) (^^) (^-^ (^Q^ (..;
    01
    31171621531
    5134665
    739815139
    sum210avg6count1[heart]max8sum61@cell(4,6)=[heart]
    35112
    19

CSV機能 Edit

CSV形式ファイルのインポート、エクスポート Edit

  • この機能で使われるCSV形式ファイルとは、PukiWikiの表組み整形ルールで使われるカンマから始まるCSV形式とは違います。表計算やデーターベース等のアプリケーションから出力する時に使われるCSV形式です。
  • この機能を使ってCSVファイルをPukiWikiに取り込むとデータは , (カンマ)区切りから | (パイプ)区切りに置き換えらtable_edit2プラグイン記述の複数行オプションとして保存されます(データ置換え時には行頭・行末に | を置く作業も行われます。)。
     逆のCSVファイルを出力する時は、table_edit2プラグイン記述内に入れた表組みデータから | を , に置き換えてくれます。
オプション説明
csv数値(1〜6)表示形式の選択(数値でimport import.png,export export.pngボタンの表示形式を切替える)
csv_selectimportまたはexport直接インポート又はエクスポートの操作パネルを表示する(通常はcsvオプション下のプログラムで使われる)
import
import.pngボタンをクリックするとファイル添付用のフォームに切り替わります。添付するファイルの文字コードを選択してから「import」ボタンをクリックしてください。
 ※表は追加モード固定です。
export
export.pngボタンをクリックするとファイルダウンロード用のフォームに切り替わります。出力用の文字コードと改行コードを選択してから「export」をクリックしてください。ダウンロードの画面に変わります。
 ダウンロード後は、「戻る」ボタンで作業ページに戻ると同時にダウンロードに使った一時添付ファイルを削除します。
(「戻る」を使わない場合、ファイルはそのまま残りますが、wiki形式で作っているので作業ページ上から削除機能で削除できます。一時添付ファイルは上書きモード固定です。)
  • Excelの出力するCSVファイルは、改行コードがLF(UNIX系)です。Excelに利用する時はSJIS、UNIX(LF)を選択してください。

ダウンロード Edit

table_edit2.inc.phpはextend/pluginへ
table_edit2.mo*1はextend/locale/ja_JP/LC_MESSAGESに置いてください。

※extend/plugin,extend/locale/ja_JP/LC_MESSAGESはplus-i18n版で追加されたディレクトリです。

表組編集支援+表計算機能バージョン

ファイルVer日付コメント
filetable_edit2.inc.php-3.1.zip.tgz3.1
+calc0.6
+func0.3
'09/12/10表計算機能の部分で発見されたバグを修正しました。
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-3.0.zip.tgz3.0
+calc0.4
+func0.3
'08/06/28コメントにてk309さんから頂いた要望(編集、追加ボタンを独立して表示・非表示と指定できるようにする)に対応してみました。書き始めのオプション入力支援フォームにも対応しています。
又、no_nullオプションの認識が出来ない時があったようなので調整しました。
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-2.9.zip.tgz2.9
+calc0.4
+func0.3
'08/05/25変更内容はdiary/2008-05-25を参照して下さい。
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-2.8.zip.tgz2.8
+calc0.4
+func0.3
'08/05/19変更内容はdiary/2008-05-18を参照して下さい。
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-2.7.zip.tgz2.7
+calc0.4
+func0.3
'08/05/12diary/2008-05-11の内容のままです。またもやチェックはあまりしていませんorz
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-2.6.zip.tgz2.6
+calc0.4
+func0.3
'08/05/06diary/2008-05-03の内容のままです。チェックはあまりしていませんorz
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-2.5.zip.tgz2.5
+calc0.4
+func0.3
'08/03/25・カンマ式表組みに微対応
・バグdiary/2008-03-25の修正
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-2.4.zip.tgz2.4
+calc0.4
+func0.3
'07/10/06オプションにauth_check_offを指定した場合、ページを凍結してもtable_edit2での編集が有効となっていた問題を修正しました。
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-2.3.zip.tgz2.3
+calc0.4
+func0.3
'07/07/13exportで作られるファイルの名前にバリエーションが無いため、複数人で同時利用した時に、上書き・削除で邪魔をしやすい問題を調整。
①作成時の設定情報をファイル名に使う
②define('PLUGIN_TABLE_EDIT2_CSV_UNLINK', FALSE);
 と設定することで作成したCSVファイルを自動削除しないようにできる
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-2.2.zip.tgz2.2
+calc0.4
+func0.3
'07/07/07CSV関連の修正を行いました
①exportのダブルクォート列指定で1列のみ指定ができなかった問題を修正
②import、exportにExcelのCSV形式を対応
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-2.1.zip.tgz2.1
+calc0.4
+func0.3
'07/06/30①各種CSV関連機能を追加
②行編集時のセルタイトル機能を追加(title_r=1
③formのradioやselectで空白定義しても選択項目に加えないno_null=1を追加
④少数点やカンマの数値書式を指定列限定にするformat_c=5を追加
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-2.0.zip.tgz2.0
+calc0.4
+func0.3
'07/04/15試験的に公開
①初期設定フォームを追加。
②form=のオプション(text,textarea)に規定値を設定できる。
③行、列の位置で計算する関数を追加。
④動作不良の原因になる一部ロジックをdefineで利用しない設定にしています。
⑤Ver1.9で見つかっている記述ミスを修正
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-1.9.zip.tgz1.9
+calc0.4
+func0.2
'07/03/26 パソコン設定によって動作しないとの報告を受け急遽、最新版を一部*3修正したものを公開します。チェックがあまりできていないので、すみませんが問題あればご報告お願いいたします。
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php-1.8.zip.tgz1.8
+calc0.4
+func0.2
'07/03/24サンプル公開
作業予定の半分が完了しましたので、区切りとして公開します。
(バグチェック行うためこのサイトも最新版に変更しました。)
 このバージョンはPukiWiki互換性を意識して色々ごまかした無駄なコードがあります。
(添付ファイルがzipとtgzで2重圧縮されています。解凍はtgz→zipの順に行ってください。)
filetable_edit2.inc.php.1.5.c04.f02.zip1.5
+calc0.4
+func0.2
'07/01/07最近なかなか作業するまとまった時間が無いので、とりあえず現状の変更分だけアップします。
①text編集の参照文字が変換されて表示する問題を修正。
diary/2006-11-17で実験したstyleを指定できるオプションを追加。
filetable_edit2.inc.php.1.4.c04.f02.zip1.4
+calc0.4
+func0.2
'06/11/15①入力アシスタントを利用できるようにしました。
②数値文字参照が変換状態で表示される状態を修正しました。
(textarea編集のみ修正しています。次のバージョンでtext編集も対応します。orz)
③キャンセルを押した時にページ先頭ではなくテーブルアンカーを目標に飛ぶよう変更しました。
filetable_edit2.inc.php.1.3.c04.f02.zip1.3
+calc0.4
+func0.2
'06/11/14オプションを追加しました。
title_c=1 列編集時、1列目を編集セルの項目名とします。
textarea  この指定でtextarea編集が可能(form指定がある場合そちらを優先する)
form    各列に対しフォームタイプを利用可能とする。
filetable_edit2.inc.php.1.2.c04.f02.zip1.2
+calc0.4
+func0.2
'06/10/28
'06/11/14
試験的にgettextに対応してみました。table_edit2.inc.phpはextend/pluginへ、table_edit2.moはextend/locale/ja_JP/LC_MESSAGESへ入れてください。
このバージョンに限りcancel処理が実行されずに削除となる状態である事が判明しましたので急遽差し替えています。
filetable_edit2.inc.php.1.1c0.4f0.21.1
+calc0.4
+func0.2
06/09/22列追加、編集機能を追加するときに「行頭にhがあるときは項目名にする」のデーター引渡しを忘れていました。またcalc処理の問題点に暫定的フィルターを付けました。
filetable_edit2.inc.php.1.0c0.3f0.21.0
+calc0.3
+func0.2
06/09/20行・列の編集・追加や編集モード切替時にgetに渡したアドレスが残り、ページ先頭に戻る現象をなるべく編集位置に戻るよう機能追加しました。
table_edit2プラグインを使用した位置にtable_edit2_table_number1という名前が入ります。例えばページ内の3つ目のtable_edit2プラグイン使用位置ならば「http://a>ージアドレス#table_edit2_table_number3」とする事で直接その位置に飛ばすリンクを作る事ができます。
calc処理部分の正規表現フィルタがあまいなためミス計算式を表内に入れるても演算処理してしまいエラーを返します。暫定的な正規表現を
ここで考えていますので必要な場合は、修正してください。
filetable_edit2.inc.php.0.9c0.3f0.20.9
+calc0.3
+func0.2
06/09/20列追加、編集機能を追加しました。大幅な変更、追加を行ったので今まで無かった問題も発生するかもしれませんが、連絡頂ければこつこつと修正していきたいと思います。
filetable_edit2.inc.php.0.8c0.2f0.20.8
+calc0.3
+func0.2
06/09/15upkさんにご指摘頂いたtableの行末に c (書式指定)があった場合、calc計算後の右寄せ書式追加を実行しないように変更しました。
関数にセルの相対参照用関数を追加しました。
filetable_edit2.inc.php.0.7c0.2f0.10.7
+calc0.2
+func0.1
06/09/14セル内の数式演算機能、関数機能を追加しました。(upkさんからアイディアを頂きました。)

表組支援機能のみバージョン

  • Ver1.8以降よりdefine('PLUGIN_TABLE_EDIT2_CALC', 0);にて計算機能を処理しない設定が可能になったため、上の表計算機能付きバージョンのみに集中して、開発を進めています。
    ファイルVer日付コメント
    filetable_edit2.inc.php.1.4.zip1.4'06/11/15①入力アシスタントを利用できるようにしました。
    ②数値文字参照が変換状態で表示される状態を修正しました。
    (こちらのバージョンではtext編集時の問題はありません。たぶん…)
    ③キャンセルを押した時にページ先頭ではなくテーブルアンカーを目標に飛ぶよう変更しました。
    filetable_edit2.inc.php.1.3.zip1.3'06/11/14オプションを追加しました。
    title_c=1 列編集時、1列目を編集セルの項目名とします。
    textarea  この指定でtextarea編集が可能(form指定がある場合そちらを優先する)
    form    各列に対しフォームタイプを利用可能とする。
    filetable_edit2.inc.php.1.2+.zip1.2+'06/10/28
    '06/11/14
    試験的にgettextに対応してみました。table_edit2.inc.phpはextend/pluginへ、table_edit2.moはextend/locale/ja_JP/LC_MESSAGESへ入れてください。
    このバージョンに限りcancel処理が実行されずに削除となる状態である事が判明しましたので急遽差し替えています。
    filetable_edit2.inc.php.1.11.106/09/22列追加、編集機能を追加するときに「行頭にhがあるときは項目名にする」のデーター引渡しを忘れていました。また消そうと思っていた処理や問題点も修正しました。
    filetable_edit2.inc.php.1.01.006/09/21列追加、編集機能を追加しました。簡易表計算付のバージョンに合わせて1.0としました。
    ※注意: こちらのプラグインには演算機能・関数機能を付けていません。
    filetable_edit2.inc.php.0.7.haeder0.706/09/12確かヘッダ(h)が無いと項目にしないように0.7をちょっと変更バージョンです。直っていない場合はプログラム内の先頭でdefine('PLUGIN_TABLE_EDIT_TABLE_HEADER', 'h');にして下さい。
    filetable_edit2.inc.php.0.70.706/09/11upkさんに指摘頂いたhttpsの対応方法を$_SERVER['HTTP_REFERER']の記述部に適用しました。
    filetable_edit2.inc.tgz0.606/09/11編集時にタイムスタンプを付けない事ができる様にチェックボタンを追加
    行追加、編集モード表示・非表示切替の時は強制でタイムスタンプを解除します。
    filetable_edit2.inc.php.0.50.506/09/10先頭の切り替えボタンで行編集アイコンを表示、非表示に切り替える
    filetable_edit2.inc.php.0.40.406/09/10アイコンリンクボタンを付ける為のinline pluginを
    コード内に追加しました。
    filetable_edit2.inc.php.0.30.306/09/10行編集画面に「cancel」、「delete」を追加しました。
    インラインのコードを追加する前のバックアップでup
    filetable_edit2.inc.php.0.20.206/09/10テキストエリアのサイズをdefineで設定可能
    行追加機能追加
    filetable_edit2.inc.php.0.10.106/09/09とりあえず編集が可能
    制限ページの挙動確認済み

ちなみに Edit

  • PukiWiki1.4.6で試してみたところ認証チェックでエラーでまくりでした。table_edit2.inc.php Ver 0.3の24,46-48,84をコメントアウトするか変更すれば動くかもです。
    • Ver1.8以降から本家PukiWiki1.4.7で利用できない関数参照をチェックしエラーを回避するようにしました。この効果でplus-euc版も利用可能と思います。(本家とplus-euc版ではメッセージが日本語で表示されません。)
  • このページの表は全部table_edit2プラグインを利用しているのですが、予想外に便利ですね。最大の理由がこのページで使われている表の場合、似通った文字が何度も使われるからです。つまり先頭文字で過去同じ文字を使った入力内容の候補が出てくるのです。(オートコンプリート機能だったかな?)
  • 現在の仕様(0.7)だと h(ヘッダ指定)が置かれている行で追加を行うとその内容をコピーしてしまいます。次のバージョンで修正しないとなぁ…。
      0
      1
      2
      3
      4
      5
      6
      7
      8
      9
     10
    
    					if($vars['edit_mod'] == 'tr'){				//tr
    						$notimestamp = TRUE;
    						$source_s .= $args_line;
    						$match_t = explode("|", $match_line[1]);
    						$source_s .= '|';
    						foreach ($match_t as $cell){
    							$source_s .= '|';
    						}
    -						$source_s .= $match_line[2] . '
    +						$source_s .= '
    ';
    					}
    • $match_line[2]が蛇足でした。 (T-T
  • 行・列追加用の+マーク(mini_add.png)mini_add.pngは06.09.10以降のPlus!-i18n SVNに含まれています。それ以前のバージョンを使っている場合は画像を右クリックして「名前を付けて画像の保存」を選んでください。

コメント Edit

Show recent 10 comments. Go to the comment page.

  • PHP 5.2.8 のerror_reporting(E_ALL); で、PukiWiki 1.4.8_alpha にサンプル1 をコピーして使ったらエラーがでました。 -- 2009-02-22 (日) 18:36:06
    • エラー Warning: Call-time pass-by-reference has been deprecated in plugin\table_edit2.inc.php on line 111 -- 2009-02-22 (日) 18:36:51
      • うちのPHP で、allow_call_time_pass_reference = Off に設定してるからですけど・・・ -- 2009-02-22 (日) 18:37:06
    • エラー Notice: Undefined offset: 1 in plugin\table_edit2.inc.php on line 61 -- 2009-02-22 (日) 18:37:50
      • オプションauth_check_off のように引数が要らないやつだと、「explode() しても要素が1つ、でも受け手はlist($key, $val) と最低でも2つを必要としている」ので、エラーが出る。array_pad() が必要 -- 2009-02-22 (日) 18:39:11
    • エラー Notice: Undefined variable: table_header in plugin\table_edit2.inc.php on line 166 -- 2009-02-22 (日) 18:39:48
      • $table_header の初期化がない(サンプルみたいに、複数行の1行目に説明文を放り込むと、こうなる) -- 2009-02-22 (日) 18:40:50
    • エラー Notice: Uninitialized string offset: 0 in plugin\table_edit2.inc.php on line 123 -- 2009-02-22 (日) 18:41:50
      • 空文字が来たときに発生 -- 2009-02-22 (日) 18:42:15
    • エラー Notice: Undefined offset: 1 in plugin\table_edit2.inc.php on line 1039 -- 2009-02-22 (日) 18:42:51
      • Notice: Undefined offset: 1 in plugin\table_edit2.inc.php on line 61 と同じ理由 -- 2009-02-22 (日) 18:43:50
    • 気がついたエラーは、これだけです。気が向いたときにでも、潰してもらえると嬉しいです。 -- 2009-02-22 (日) 18:45:40
  • pukiwiki:自作プラグイン/attachref.inc.php にも、table_edit2プラグインとattachrefプラグインを同時利用した場合の問題が書かれていますね。 -- 2009-05-11 (月) 14:01:50
  • TableKitみたいにjavascriptを利用してその場で修正変更ができるととても便利でうれしいです。 -- rti? 2009-10-24 (土) 14:02:56
  • javascriptを利用するなら、それ専用にプラグインを用意した方が早いしシンプルですね。table_edit2は当初javascriptを使わない前提でたぶん作っていたと思うし・・・。 -- taru 2009-10-24 (土) 14:26:07
  • (希望・機能)プルダウンメニュー、ラジオボタン、チェックボックス、自動日付、カレンダー、添付ファイル -- pop? 2009-11-12 (木) 15:44:40
  • 便利に使わせて頂いています。ver.3.0の769行目でエラーが出ます(発生したwikiソースは企業秘密で出せず、再現させようとしていますが、作れません。。) -- pcook? 2009-11-18 (水) 16:17:12
  • eval("\$cell = $exp;");となっていますが、$cellに$expの中身を代入したいということでしょうか。eval("\$cell = \"$exp\";"); とすると上手く動きます。 -- pcook? 2009-11-18 (水) 16:20:00
    • 単にeval("\$cell=\$exp;");でもいいのかな。 -- pcook? 2009-11-18 (水) 16:20:30
    • すみません、ハッキリわかりませんが、ご検討頂けると幸いです。 -- pcook? 2009-11-18 (水) 16:21:18
    • エラーは、syntax error : unexpected ";" みたいな感じでしたので(これまた曖昧ですみません)、$expが文字列としてではなくプログラムとして展開されているんだと判断しました。 -- pcook? 2009-11-18 (水) 16:40:39
  • 最後の書込みがあっていると思います。eval("\$cell = $exp;");は表のセルに記述した数式をプログラムとして実行させたいわけです。エラーが発生する原因としてはフィルタ設定が甘く、表のセルに書き込んだ「数式ではない文字列」が通ってしまいevalに渡されエラーとなったと推測します。
    差し支えなければ原因とおぼしき文字列を連絡頂ければありがたいです。 -- taru 2009-11-18 (水) 19:02:25
    • ご回答ありがとうございます。表を削りながら、エラーがでる・でないで絞っていったら、calc=1オプションがついていて、かつ、「スペースのみ」のセルがある場合にエラーとなります。しかし、taruさんのサイトの練習ページでエラーを出してみようとしましたが(とんでもないことをしていたのかもしれません。すみません。。)、エラーとはなりませんでした。しかし、そのセルは「0」と表示されました。 -- pcook? 2009-11-18 (水) 19:36:37
      • スペースのみのセルは、意味がないものですが、GUI Editを使って表を作ると、スペースが入っていまして、この表に、合計計算をしたくて、table_edit2プラグインを使わせていただきたく、calcオプション付きで適用させて頂いたところ、エラー発生となりました。 -- pcook? 2009-11-18 (水) 19:38:46
    • 空白でeval()の代入式の右辺がないということでしょうか。直前のif文の中の、$exp != の部分を、trim($exp) != くらいにすればよいってことな気がしてきました。 -- 2009-11-18 (水) 19:53:01
    • 確認しました。空白文字がエラーとなる原因ですね。参照式にも影響があるので空白文字があった場合$cell=""とする必要があります。 -- taru 2009-11-19 (木) 18:28:04
  • pukiwiki.iniのdefine('PKWKEXP_DISABLE_MULTILINE_PLUGIN_HACK'のフラグを「1」に。plusフォルダはimageに入れる。 -- メモ(puki 1.4.7)? 2009-12-02 (水) 14:14:02
  • この時点でこのページに対して文字の追加入力を行おうとした結果、次のエラーが発生しました
     「Fatal error: Allowed memory size of 94371840 bytes exhausted (tried to allocate 30241771 bytes) in /virtual/taru/public_html/wiki/lib/backup.php on line 66」
    とりあえず簡易対応として、コメント方法をpcomment利用に変更しました。 -- taru 2009-12-10 (木) 18:37:13
Name: URL B I U SIZE Black Maroon Green Olive Navy Purple Teal Gray Silver Red Lime Yellow Blue Fuchsia Aqua White

*1 moファイルはVer1.2以降から追加しています。
*2 editのオプションを使わ無い場合、ノーマルページはon、edit_auth_pagesの設定ページはoff(認証済みユーザはon)
*3 $_SERVER['HTTP_REFERER']を利用した不正利用のチェックはファイアウォール搭載のパソコンでは使えない事が判明した為。

Attach file: filetable_edit2.inc.php-3.1.zip.tgz 50 download [Information] filetable_edit2.inc.php-3.0.zip.tgz 572 download [Information] filetable_edit2.inc.php-2.9.zip.tgz 98 download [Information] filetable_edit2.inc.php-2.8.zip.tgz 51 download [Information] filetable_edit2.inc.php-2.7.zip.tgz 46 download [Information] filetable_edit2.inc.php-2.6.zip.tgz 75 download [Information] filetable_edit2.inc.php-2.5.zip.tgz 80 download [Information] filetable_edit2.inc.php-2.4.zip.tgz 266 download [Information] filetable_edit2.inc.php-2.3.zip.tgz 141 download [Information] filetable_edit2.inc.php-2.2.zip.tgz 89 download [Information] filetable_edit2.inc.php-2.1.zip.tgz 87 download [Information] filetable_edit2.inc.php-2.0.zip.tgz 144 download [Information] filetable_edit2.inc.php-1.9.zip.tgz 107 download [Information] filetable_edit2.inc.php-1.8.zip.tgz 121 download [Information] filetable_edit2.inc.php.1.5.c04.f02.zip 136 download [Information] filetable_edit2.inc.php.1.5.c04.f02 67 download [Information] filetable_edit2.inc.php.1.4.zip 323 download [Information] filetable_edit2.inc.php.1.4.c04.f02.zip 119 download [Information] filetable_edit2.inc.php.1.3.c04.f02.zip 99 download [Information] filetable_edit2.inc.php.1.3.zip 102 download [Information] filetable_edit2.inc.php.1.2+.zip 100 download [Information] filetable_edit2.inc.php.1.2.c04.f02.zip 101 download [Information] filetable_edit2.inc.php.1.2.zip 73 download [Information] filetable_edit2.inc.php.1.1c0.4f0.2 147 download [Information] filetable_edit2.inc.php.1.1 134 download [Information] filetable_edit2.inc.php.1.0 110 download [Information] filetable_edit2.inc.php.1.0c0.3f0.2 129 download [Information] filetable_edit2.inc.php.0.9c0.3f0.2 122 download [Information] filetable_edit2.inc.php.0.9c0.3f0.2beta 38 download [Information] filetable_edit2.inc.php.0.8c0.2f0.2 117 download [Information] filetable_edit2.inc.php.0.7c0.2f0.1 131 download [Information] filetable_edit2.inc.php.0.7+calc+func 55 download [Information] filetable_edit2.inc.php.0.7+calc 68 download [Information] filetable_edit2.inc.php.0.7.haeder 120 download [Information] filetable_edit2.inc.php.0.7 123 download [Information] filetable_edit2.inc.tgz 109 download [Information] filetable_edit2.inc.php.0.5 137 download [Information] filetable_edit2.inc.php.0.4 130 download [Information] filetable_edit2.inc.php.0.3 145 download [Information] filetable_edit2.inc.php.0.2 127 download [Information] filetable_edit2.inc.php.0.1 120 download [Information]

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
Last-modified: (9d)