**[[続・質問箱/235]] [#kf348981]
#author("2018-03-11T13:23:20+09:00;2004-08-24T14:37:32+09:00","","")
**[[質問箱/2235]] [#kf348981]
|RIGHT:70|LEFT:410|c
|~カテゴリ||
|~サマリ|自作のプラグインが返すテキストを,再評価する方法?(外部コマンドの実行)|
|~バージョン|1.4.3|
|~投稿者|[[ihieda]]|
|~状態|完了|
|~投稿日|&new{2004-06-29 (TUE) 10:19:45};|
***質問 [#i6cec944]
話が,わかりにくいので,[[質問書き直しました.下の方にジャンプです>#reflesh]].

(ここからは無視してください)こんにちは.一応調べたつもりなんですが,まだPukiWikiの経験が浅いこともありまして,回答が見つかりません.
外部コマンドを実行して,その結果を取り込むことはできないでしょうか.
具体的には,

 dbmmanage /path/to/auth_file view | sort | \
         sed 's/^[^:]*:[^:]*$/&::/' | sed 's/:/,/g' | \
         sed 's/^/,/'

などというコマンドを実行して,表を表示したいのです.もちろん,この例は長たらしいので,Shellスクリプトにして,一語のコマンドにします.
こういうことが可能ならば,MySQLの出力もいきなり表に表示できてうれしいのですが.

***%%回答 [#w134df03]%%
***%%回答 [#w134df03]%% [#taec0627]
-[[ihieda]] &new{2004-06-29 (TUE) 10:49:32};
~済みません,質問変えます.最初の質問のができてしまうと,セキュリティー上管理が難しいですね.そこで,新しくした質問ですが,「外部コマンドを実行して結果を表示する単純なプラグインのひな形はありますか」ということでお願いします.
-[[ihieda]] &new{2004-06-29 (TUE) 12:17:03};
~毎度,済みません.ひとり芝居状態で.Pluginは,
 <?php
 function plugin_member03_inline()
 {
         $items="";
 
         $cmd ="/home/ihieda/bin/webaccess";
  
         exec($cmd,$array);
  
          for ($i=0; $i<count($array); $i++) {
                 $item .=$array[$i]."\n";
          } 
 
         return $item;
 }
 ?>

という形でできました./home/ihieda/bin/webaccessとは,最初の質問にあるコマンドをスクリプトにしたものです.

これを&member03;で参照してもCSVがそのまま表示されてしまいます.これを表に変換する方法があれば一番ですが,解らないので,Shellスクリプトのほうでテーブルのタグを入れました.
 #!/bin/sh
  
 AUTHFILE=/path/to/auth_file
 
 echo "<table class=\"style_table\" cellspacing=\"1\" border=\"0\">" 
  
 dbmmanage $AUTHFILE view | sort |
         sed 's/^[^:]*:[^:]*$/&::/'      |
         sed 's/:/<\/td><td class=\"style_td\">/g' |
         sed 's/^/<tr class=\"style_tr\"><td class=\"style_td\">/' |
         sed "s/$/<\/td><\/tr>/"
 
 echo "</table>"

自分の目標は達成できましたが,現在残っている質問としては,「自作プラグインで読み込んだCSVデータを表に変換する方法はありますか?」です.

---------------------------------
&aname(reflesh);
***質問やりなおし [#m841d09e]
自作のプラグインが返すテキストを,再評価する方法はありますか?~
例えば,自作プラグイン&hiehie;が,
 &heart;
という値を返したとします.今の仕様ではこれはただ,
 &heart;
としか表示されないと思います.これを~
&heart;~
に変換する,言い換えれば,プラグインが返すテキストをソースと見て再評価する方法はありますか?
***回答 [#k4a65e02]
-[[三浦克介]] &new{2004-07-03 (SAT) 11:20:42};
~プラグインから返す前に、convert_html() に通せば大丈夫だったと思います(多分)。
-三浦さんありがとうございます.CSVに近い表データからお手軽に作表したかったのですが,今回は,phpスクリプトからさらにsedを使ったshellscriptを呼んで,htmlタグを植えるようにしてしまいました.次の機会にconvert_html()を試してみたいと思います.&color(red){完了};でよいかと思います. -- [[ihieda]] &new{2004-08-24 (火) 12:47:46};

#comment

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u8. HTML convert time: 0.136 sec.

OSDN