#!/usr/local/bin/perl ################################################### # # Edit.cgi for Cross o'well cliants # Ver. 0.1 rev0(Beta version) # Copyright (C) Korghts* All Right Reserved 2002. # バグを発見した方は、korghts@anet.ne.jpまで # ################################################### # # データファイルとディレクトリファイルの仕様は、 # E-groupsのKorghts*の共有フォルダ内に有ります # ################################################### require './jcode.pl'; require './cross.pl'; ############## ## Setting $filen = $id . ".txt"; #データ名 $direct = "dir" . $id . ".txt"; #ディレクトリ一覧 ## EOS sub error{ $error = $_[0]; #あまり意味はないが、、、引数を$errorに代入 $title = "何らかの原因により操作失敗"; if ($error == "0"){ $eco = "ファイルが開けなかった"; } elsif ($error == "1"){ $eco = "名前が違っていた"; } elsif ($error == "2"){ $eco = "パスワードが違っていた"; } &head; #お決まりHTMLヘッダ print <何らかの原因により操作失敗しました

$ecoことにより操作を失敗しました。
パスワードか名前が違っていた場合は、ここでやり直してください。
ファイルが開けなかった場合は、再読み込みなどの操作をしても治らない場合は、korghts$@anet.ne.jpにご連絡ください。
Copyright © Korghts* All Right Reserved 2002 EOF &foot; } if ($ENV{'REQUEST_METHOD'}eq"GET"&&$QUERY{'usr'}eq"usrs"){$data=$ENV{('QUERY_STRINGS')}; @pairs = split(/&/,$data); #送られてきたデータは"&"で区切られているので、分割する foreach $pair(@pairs){ ($name, $value) = split(/=/, $pair); $value=~ tr/+/ /; $vakye=~ s/%(a-fA-F0-9][a-fA-f0-9])/pack("C", hex($1))/eg; $form{$name} = $value; #foreach内はマニュアル通り〜 } $form{'name'} = $id; $form{'nub'} = $pass; while(){ #ファイル内をIDが一致するまで検索合っているならループ脱出,合ってなかったらどうなる・・・の? open(IDN,"id.dat") || &error("0"); $idss = ;#スカラー変数はファイルハンドルの前に(笑) ($rid,$rpass) = split(/!/, $idss); if($rid eq $id){ last; }else{ &error("1"); } }; if($rpass == $pass){ open(FILES,$filen) || &error("0"); $file = ; close(FILES); $file = ~s//>/g; $title = "データ入力"; &head; print < 入力し終わったら、「ファイル化」を押してください。

EOF print $file; print < Copyright © Korghts* All Right Reserved 2002. EOF &foot; }else{ &error("2"); } }elsif($ENV{'REQUEST_METHOD'}eq"POST"&&$QUERY{'subm'}eq"subm"){ read(STDIN, $QUERY_DATA, $ENV{'CONTENT_LENGTH'}); @pairs =split(/&/,$QUERY_DATA); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $value = ~tr/+/ /; $value = ~s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg; $value = ~s//</g;#普通のファイル処理と同様 $value = ~s/\n//g; $form{$name} = $value; } $title = $form{'title'}; $lfile = &head; $lfile .= $form{'form1'}; $lfile .= $form{'form2'}; $lfile .= $form{'form3'}; $lfile .= $form{'form4'};#仕様に従いドキュメント結合 print $lfile; print $direct;#ディレクトリファイル &foot; }elsif($QUERY{'last'}eq"file"){ read(STDIN, $QUERY_DATA, $ENV{'CONTENT_LENGTH'}); @pairs = split(/&/,$QUERYDATA); foreach $pair (@pairs){ ($name, $value) = split(/=/, $pair); $value= ~tr/+/ /; $vakye= ~s/%(a-fA-F0-9][a-fA-f0-9])/pack("C", hex($1))/eg; $form{$name} = $value; } $form{'data'} = ~s/ds-_fd/$form{'dirc'}/g; $form{'name'} .= "html"; $name = "+>>" . $form{'name'}; open(DDL,$name); $title = "ファイルの保存"; &head(HTML); print DDL $form{'data'}; &foot(HTML); close(HTML); $title = "ファイルの作成完了"; &head; print "ファイルが出来上がりました。
"; print "" . $form{'name'} . "です。 このファイルをダウンロードして、FTPソフトでアップロードしてください。

"; print "Copyright © Korghts* All Right Reserved 2002."; &foot; }else{ &head; $title = "We don't accept your access."; print <We don't accept your acccess

If you want to acccess, back here please.
Copyright © Korghts* All Right Reserved 2002. EOF &foot; }