七行プログラミング (452レス)
上下前次1-新
抽出解除 レス栞
137(2): ◆PAmX3cjLtw 03/04/20 02:19 ID:??? AAS
encoding をハズしてなんとかイけたよ。疲れた。
まとめ&使い方
・番号自動リンク( >>100 とか入力する)
・URL自動リンク(外部リンク:...行末までリンク)
・キャップ(名前欄の # 以降をcryptします)
・EUC-JP で保存する(じゃないと文字化けする)
・&を&に置換する
・カレントに空ファイル F を作ること
------------------------------- 7ch.cgi
use CGI':all';open F,'+<F';[<F>];$.++;*i=*param;s!&gt;&gt;(\d+)!a{href,"#R$1"},
$&!eg,s!https?外部リンク:.+?$!a{href,$&},$&!emg,s/\n/br/eg,seek(F,0,2),eval{flock F,2},
($n=i(N)||'nobodyさん')=~s/#.*/crypt$&,'◆'/e,print F dt("$. :".b(a{name,"R$."
,i(M)&&(href,'mailto:'.i M)},font{color,'green'},$n),':'.localtime),dd($_.p),"
"if$_=escapeHTML i T;seek F,0,0;*x=*textfield;put header(-charset=>'EUC-JP'),
start_html({lang,'ja',bgcolor,'#efefef'}).dl(<F>),startform,p(submit('書き込む'
),' 名前:',x(N),' E-mail:',x(M),br,textarea(T,'',6,70,1)),endform,end_html;
139: 03/04/20 04:57 ID:??? AAS
>>137
・改行しないとレス番が2以上に増えない。
・Mozilla 1.3 だと font では色変わらんかったんで、CSS に戻し。
・> 一個でリンク。
use CGI':all';open F,'+<F';[<F>];seek F,0,2;*i=*param;s!&gt;(\d+)!a{href,"#R$1"
},$&!eg,s!https?外部リンク:.+$!a{href,$&},$&!emg,s/\n/br/eg,eval{flock F,2},($n=i(N)||
'nobodyさん')=~s/#.+/crypt$&,'◆'/e,print F dt(++$.,':'.b(a{name,"R$.",i(M)&&(
href,'mailto:'.i M)},$n),':'.localtime),dd($_.p),"\n"if$_=escapeHTML i T;seek
F,0,0;*x=*textfield;put header(-charset=>'EUC-JP'),start_html({lang,ja,Style,
'b{color:#080}body{background:#eee}'}),dl(<F>),hr,startform,p(submit('書き込む'
),' 名前:',x(N),' E-mail:',x(M),br,textarea(T,'',6,70,1)),endform,end_html
>>130 での変更は HTML 的に正しくする為のものなんだけど
(文字コードや言語を指定するから化けずに済む)、そーゆーの
より「似せる」方を重視してるのかな?
385: 2006/01/25(水)22:08 ID:??? AAS
7CMS
このスレで作った >>365 >>378 >>381 >>384 をモジュール化して一元管理する。
サードパーティー製品でもCGI.pmを使ったものなら大丈夫かも。
>>137 >>274 は一応動いた。
使い方は全部同じディレクトリに入れればいいだけだから。
use CGI':all';$d=param '*';@r=[$0=~/([^\\\/]+)$/,'START'];$p=$`;for$n(<*>){if($r
[0][0]ne$n&&$n=~/\.cgi$/){$r='';chdir$p;open F,$n;read F,$c,-s F;tie*G=*STDOUT,
'main';eval"package C$`;$c";untie*G;$r=~s/^.+?(\r?\n){2}//s;$r=~s/(<a\s.*?\?)(.
*?>)/$1*=$d&$2/gisx;$r=~s!(?=</for)!hidden -name,'*',-value,$d!egi;push@r,[
$n,$r.$@]}}AUTOLOAD{ref(shift)?($r.=join'',@_):bless[]}charset '';put header,
table Tr td{style=>'vertical-align:top;text-align:left;border:1px solid gray'},
[ul(li[map a({href,"?*=$_"},$d==$_?b($r[$_][0]):$r[$_][0]),0..$#r]),$r[$d][1]]
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ アボンOFF
ぬこの手 ぬこTOP 0.015s