68user's page 掲示板

Prev< No. 285〜290> Next  [最新発言に戻る] [過去ログ一覧]
No. 285 # 68user 1999/04/30 (金) 02:03
あ、見れた。で、気づいた事。

    - $monが0月〜11月になっちゃいませんか。

うーん、これくらいかなぁ。後はどーでもいいというか、些細な事というか、
好みの問題というか。

    - EOF は End Of File の略なので、EOTが適当…なんでしたっけ?
        (EOT=End Of Textのつもり)。
    - if ($... <10) { $... = "0..." } の羅列より、
            $now = sprintf("%4d/%02d/%02d ...",$year+1900,$mon+1,$mday,...)
        の方がすっきりするかも。

全体的に特に問題はないんじゃないでしょうか。

No. 286 # 68user 1999/04/30 (金) 02:16
後は
> ($dtm,$soft,$point,$reho) = split(/\,/, $data[0]);
($dtm,$soft,$point,$reho) = split(/,/, $data[0]);
> $temp = $now."\,".$FORM{'soft'}."\,".$FORM{'point'}."\,".$ureho."\n";
$temp = "$now,$FORM{'soft'},$FORM{'point'},$ureho\n";

くらいかなぁ。ほんとに細かいことですけど。

それからこれは根本的な問題ですが、FORMから渡される値をチェックして
ないので、変なのを入れられる可能性がありますね。旧SEGA BBSのように。

渡された値が適切かどうかを調べるのは(僕は)必須だと思います。

No. 287 # R-N 1999/04/30 (金) 03:46
あ、3月だ...、全然気付きませんでした。(-_-;
変な書き方してますね私、指摘されると自分でも思う...。
sprintfは便利ですね。でもなんで%02dの時だけ『0』が...。
私の持ってる本も%02dだけ0が付いてる...。

> FORMから渡される値をチェック...
とりあえず$ENV{'HTTP_REFERER'}のチェックを入れてみます。
って、コレだと投票できないブラウザがあったか...。<SSとか

全部の値をチェックするんだったら投票フォーム部分も組み込んだ方が
楽そうだし、そうしようかな...。<いづれ(^_^;

勉強になりました!

>変なのを入れられる可能性がありますね。旧SEGA BBSのように。
ギクッ!

No. 288 # 1111 1999/04/30 (金) 16:07
111111

No. 289 # 1111 1999/04/30 (金) 16:07
2222222

No. 290 # M.Masuda 1999/04/30 (金) 23:26
こんばんは。

Perlのreaddirでの現象でお聞きしたいのですが。
普通、以下の様な記述で@filesには、ディレクトリ内のファイル&
ディレクトリが入りますが、この配列の中に返される文字列の中に
複数のバイナリが混じるというのは、ディレクトリエントリが壊れ
ているのでしょうか。

opendir(DIR, "./");
@files = readdir(DIR);
closedir(DIR);

特にヌル(\x00)が多量に含まれます。
さらにこの状態のディレクトリを、他のディレクトリにコピー
した時に症状が引き継がれるのは、壊れていると仮定すると
親ディレクトリからの影響が出ているのでしょうか。

またこの症状が出るのは、nfs等で共有しているディレクトリです。
何か分かる事が有りましたら、よろしくお願いします。
ちなみに以下のスクリプトでは問題無く表示されます。
#!/usr/local/bin/perl
$|=1;
print "Content-type: text/plain\n\n";
$_ = system("ls -l ./ 2>&1");
print "$_\n";

Prev< No. 285〜290> Next  [最新発言に戻る] [過去ログ一覧]