stop_h() (SSM内部使用関数)
ssmerror($msg) (SSM内部使用関数)
debugprt() (SSM内部使用関数)
hide_fname($file) (SSM内部使用関数)
hide_error($errormsg) (SSM内部使用関数)
errormsg($msg) (SSM内部使用関数)
parsehtmlwithfunc() (SSM内部使用関数)
getpackagename($script_file) (SSM内部使用関数)
ssmprintfile()
printfile($filename,$format) (SSM内部使用関数)
printvalue()
parse_selected()
checkandmkdir($file) (SSM内部使用関数)
text2html()
text4textarea()
pagecodeconv($string) (SSM内部使用関数)
mailcodeconv($string) (SSM内部使用関数)
codeconv($string,$charset) (SSM内部使用関数)
conv4transsubmit($string)
(古い)reconv4transsubmit($string)
(古い)go_and_exit($$)
Ssm::Common - ssm2対応 共通関数モジュール
$Id: Ssm-Common1_33.html,v 1.2 2018/08/12 23:34:55 sugu Exp $ Please do 'perldoc -t Ssm::Common' if you get MOJIBAKE.
use Ssm::Common; &printfile($filepath);
etc...
ミドルウェアSSM用の基本関数モジュールです。対応しているのは ssm2 です。 主として、スクリプトssm2が内部で使用します。
関数内では、ssm2(実行ファイル)で定義するパッケージ main または Ssm::Config 内の変数を使用します。
殆どの関数は、スクリプトssm2が内部的に使用しますが、SSMタグに指定またはスクリプトファイル内でモジュール名を付けて呼び出すことによりユーザが使用できる関数もあります。
stop_h() (SSM内部使用関数)
ssmerror($msg) (SSM内部使用関数)
debugprt() (SSM内部使用関数)
hide_fname($file) (SSM内部使用関数)
hide_error($errormsg) (SSM内部使用関数)
errormsg($msg) (SSM内部使用関数)
parsehtmlwithfunc() (SSM内部使用関数)
getpackagename($script_file) (SSM内部使用関数)
パッケージ名文字列。 パッケージ名が取得できない場合は、0。
ssmprintfile()
<SSM MODE="begin" FUNCTION="Ssm::Common::ssmprintfile" FILE="/data/somefile.html" FORMAT="html"> <SSM MODE="end">
フォーマット表記は Case Insensitive。
printfile($filename,$format) (SSM内部使用関数)
フォーマット表記は Case Insensitive。
printvalue()
ACTION属性で複数値を持つクエリー変数等の繰り返し処理を指定できる。
RESULTVALUE属性を指定すると、標準出力への print でなく、 名前が __(指定された文字列)__ のクエリ変数に結果出力を格納する。 (名前は、指定された文字列の前後にアンダースコア2つずつ。)
<TABLE BORDER="1"> <TR><TH>key</TH><TH>value</TH></TR>
<SSM ACTION="allpair" FUNCTION="Ssm::Common::printvalue" MODE="begin"> <TR><TD>%_key_%</TD><TD>%_value_%</TD></TR> <SSM MODE="end">
</TABLE>
クエリーの全てのkey=valueのペアを表示する。 同じkeyで複数のvalueがある場合は、カンマで区切られる。 SSMタグで挟む文字列の %_key_% が keyに、%_value_% がvalueに置換される。 全てのkey分、置換をしながらSSMタグで挟まれた文字列を繰り返し表示する。 %_key_% と %_value_% は Case sensitive。 ACTIONが指定されなかった場合はallpairと解釈される。
例)
<TABLE BORDER="1"> <TR><TH>key</TH><TH>value</TH></TR>
<SSM MODE="begin" FUNCTION="Ssm::Common::printvalue" ACTION="allpair"> <TR><TD>%_key_%</TD><TD>%_value_%</TD></TR> <SSM MODE="end">
</TABLE>
指定したkeyの値を表示する。 SSMタグで挟む文字列の %_(keyの名前)_% がvalueに置き換えられる。 同じkeyで複数のvalueがある場合は、カンマで区切られる。 SSMタグで挟まれた文字列を繰り返し表示しないのが allpair との違い。 %_(keyの名前)_% は Case sensitive。
例)
<TABLE BORDER="1"> <TR><TH>値をまとめて表示</TH></TR>
<SSM MODE="begin" FUNCTION="Ssm::Common::printvalue" ACTION="once"> <TR> <TD> aaaとcccの値: %_aaa_% および %_ccc_%<BR> ddd: %_ddd_% </TD> </TR>
<SSM MODE="end">
</TABLE>
指定したkeyの値を表示する。 SSMタグで挟む文字列の %_(keyの名前)_% がvalueに置き換えられる。 同じkeyで複数のvalueがある場合は、最初の値のみ表示される。 但し、順番は固定されていない。 全てのkeyについて、valueがそれぞれ一つずつしかないという保証がある場合、once と同じ。 %_(keyの名前)_% は Case sensitive。
例)
<TABLE BORDER="1"> <TR><TH>key</TH><TH>value</TH></TR>
<SSM MODE="begin" FUNCTION="Ssm::Common::printvalue" ACTION="first"> <TR><TD>aaa</TD><TD>%_aaa_%</TD></TR> <TR><TD>ccc</TD><TD>%_ccc_%</TD></TR> <SSM MODE="end">
</TABLE>
指定したkeyの値を表示する。 SSMタグで挟む文字列の %_(keyの名前)_% がvalueに置き換えられる。 同じkeyで複数のvalueがある場合は、一番個数の多いkeyのvalueを 表示し切るまで、置換をしながらSSMタグで挟まれた文字列を繰り返し表示する。 %_(keyの名前)_% は Case sensitive。
例)
<TABLE BORDER="1"> <TR><TH>value</TH></TR>
<SSM ACTION="roop" FUNCTION="Ssm::Common::printvalue" MODE="begin"> <TR><TD>%_ccc_%</TD></TR> <SSM MODE="end">
</TABLE>
parse_selected()
RESULTVALUE属性を指定すると、標準出力への print でなく、 名前が __(指定された文字列)__ のクエリ変数に結果出力を格納する。 (名前は、指定された文字列の前後にアンダースコア2つずつ。)
SSMタグで挟む文字列には、選択状態を示す文字列を書き出す位置に %_(keyの名前)_% という文字列を表示しておく。
例えば、
<SELECT NAME="ccc" MULTIPLE SIZE="3"> <OPTION VALUE="ddd" %_ccc_%>ddd <OPTION VALUE="eee" %_ccc_%>eee <OPTION VALUE="fff" %_ccc_%>fff </SELECT>
と記述すれば、該当するVALUEの値が送信された場合、%_ccc_% が selected に置換される。
VALUE属性は省略できない。つまり、
<OPTION>ddd <OPTION>eee <OPTION>fff
は、値送信の際には動作するが、選択状態をデフォルトで表示したい場合は、以下の表記は不可。
<OPTION %_ccc_%>ddd <OPTION %_ccc_%>eee <OPTION %_ccc_%>fff
<INPUT TYPE="checkbox" NAME="ddd" value="value-of-ddd" %_ddd_%>
<INPUT TYPE="radio" NAME="ddd" VALUE="value1" %_ddd_%> <INPUT TYPE="radio" NAME="ddd" VALUE="value2" %_ddd_%>
checkandmkdir($file) (SSM内部使用関数)
text2html()
text4textarea()
pagecodeconv($string) (SSM内部使用関数)
mailcodeconv($string) (SSM内部使用関数)
codeconv($string,$charset) (SSM内部使用関数)
conv4transsubmit($string)
(古い)text4textarea()
関数の定義により、不要となる。
同一目的のためには text4textarea()
の使用を推奨。
reconv4transsubmit($string)
(古い)conv4transsubmit()
の代わりに text4textarea()
を使用すると、不要となる。
go_and_exit($$)
Miyabiko INOUE <miy@web-ware.org> バグ等の御連絡は mailto:miy@web-ware.org までお願いいたします。
Copyright (c) Miyabiko INOUE <miy@web-ware.org>. All rights reserved.
このモジュールは無償でご利用いただけます。 改変、再配布などの使用許諾に関しては、Perl の Artistic License を適用します。
This program is free software; you can redistribute it and/or modify it under Perl Artistic License.
Further information: http://www.web-ware.org/
perl(1).