X



自作CGIを評価するスレ

0378nobodyさん
垢版 |
03/06/24 15:40ID:???
↓これでもこわれる?(CSVの処理はPerlメモ参考にしてます)
use strict;
use Fcntl qw(:flock);
$tmpfile = "$datafile".".$$.". time() .".csv";  #万が一リネーム失敗したときのために、
          #ユニークなファイル名にしておく

open (LOCKF, ">$datafile"."_lockf") or die("cannot open:$!");  #ロックファイルを作成する
          #(★注:ロックファイルは、各CSVごとにユニークに)
  flock (LOCKF, LOCK_EX);  #ロックファイルをflockする
  open(IN, "< $datafile") or die("cannot open:$!"); # 読みのみモードで開く
    open(TMP,"> $tmpfile"); #テンポラリファイルを作成
      while ($line = <IN>){
        $line .= <IN> while ($line =~ tr/"// % 2 and !eof(IN));
        $line =~ s/(?:\x0D\x0A|[\x0D\x0A])?$/,/;
        @values = map {/^"(.*)"$/s ? scalar($_ = $1, s/""/"/g, $_) : $_}
         ($line =~ /("[^"]*(?:""[^"]*)*"|[^,]*),/g);
        #必要なものだけをEUCにして、出力時にSJISにする
        foreach $value (@values){
          &jcode::convert(\$value, "euc");
        };
        #CSV形式に変換
        $newline = join ',', map {(s/"/""/g or /[\r\n,]/) ? qq("$_") : $_} @values;

        print TMP "$newline\n" ;#テンポラリファイルに1レコード書き込み
      }
    close TMP;
  close IN;
  unlink $datafile;
  rename ($tmpfile, $datafile) or die ("cannot rename : $!");
close LOCKF;
0379374
垢版 |
03/06/24 15:41ID:???
>絶対壊れないファイルロックってある訳ない

この根拠がどこからくるのかわからないが、
少なくともとてつもないアクセス集中に対応できるように非ブロックモードで
タイムアウトを備えてないとまず無理だということは教えておこう。
0380378
垢版 |
03/06/24 15:41ID:???
あ、EUCにしてからSJISにもどすの忘れてるけど、そこは気にしないで
0381371
垢版 |
03/06/24 15:46ID:01cZwzPj
> どんなロックしててもファイルは壊れるんだから、

そんなことはない。

というか、上(大崎氏の)のルーチンでファイル壊れたんならファイルシステムに
不備があるか、打ち間違いがあるかパーミッションやらの設定を誤ってるかどれか。
ファイルシステム上でrenameが衝突しないという条件の元でならうまく行くはず。

アクセス集中でファイルが壊れるのはロックの機構に不備がある
だけで、正しい状況下で行われたUNIX系OSでのflockでは、ファイルシステム
にバグがあるか、ファイルシステム自体のクラッシュでもない限り壊れない。

>>375
flockはNFS越しの場合に失敗するから、ファイスシステムを予め
調べておく必要がある。
NFS越しだとPOSIXモジュール使うかfcntl使う必要があった気がする。

>>376
> どんなに集中アクセスを受けても、
> 絶対壊れないファイルロックってある訳ない。
> あったら、ぜひ見て見たい。

非ネットワークファイルシステム+UNIX系OSでのflock。stableなバージョン上で
これで壊れたって話は逆にあったら見てみたい。
0382371
垢版 |
03/06/24 15:48ID:01cZwzPj
>>377
ネットワークファイルシステムを使ってる場合はね。
それ以外で壊れるという話は(ファイルシステム開発中のバグ以外は)
聞いたことない。再現できたら結構すごいと思うが。
0383371
垢版 |
03/06/24 15:54ID:01cZwzPj
変な憶測並べる前にFAQくらいみんな読もうよ。

http://elib.cs.berkeley.edu/~loretta/perl/nmanual/pod/perlfaq5/How_can_I_lock_a_file_.html
0384nobodyさん
垢版 |
03/06/24 18:50ID:???
追加書き込みすれば壊れない。
0385371
垢版 |
03/06/24 19:10ID:01cZwzPj
>>384
2つのプロセスが同時に追加書込しようとしたら、
その部分は壊れるよ。
0386nobodyさん
垢版 |
03/06/24 20:17ID:???
>>371
って言うかOSが関与しないファイルロックで信頼できるアルゴリズムってあるの?

0388378
垢版 |
03/06/24 20:27ID:???
>>378
はどうですか?
0389nobodyさん
垢版 |
03/06/24 20:34ID:???
>>388
ええ、ばっちりシステムコールのflockがいらっしゃいますね。
0390371
垢版 |
03/06/24 20:45ID:???
>>386
symlinkにしろ、rewriteにしろ、mkdirにしろ、OSがファイルシステム上で衝突しないように
設計されているという大前提で作られてるし、実際衝突するかどうかはOS次第なので、
OSに非依存で汎用可能なアルゴリズムっていうのは原理的に不可能じゃないかと。
0391nobodyさん
垢版 |
03/06/24 20:47ID:???
>>390
その意見には激しく同意。
じゃあ、議論するだけ無駄だと思うわけだ。
0392nobodyさん
垢版 |
03/06/24 20:48ID:???
>OSがファイルシステム上で衝突しないように設計されているという大前提で作られてるし。

OS側でAtomicでもプログラム側がそうでなけりゃ・・・。
0393nobodyさん
垢版 |
03/06/24 21:00ID:???
>>373-392
スレ違い。
ファイルロックについてのスレあるから、
そこで熱く語ってくれ。
0394nobodyさん
垢版 |
03/06/25 00:00ID:???
require './my_flock.pl';
while (1) {

  while ( not defined ($lock = &my_flock()) ) {};
    open (IN, "./count.txt");
    $data = <IN>;
    close (IN);
  &my_funlock($lock);

  print ++$data. "\n";

  while ( not defined ($lock = &my_flock()) ) {};
    open (OUT, ">./count.txt");
    print OUT $data. "\n";
    close (OUT);
  &my_funlock($lock);

  if ($data >= 10000) {
    last;
  }
}

>>371のその辺のファイルロックを別ファイルに取って呼び出してる。
これを、二つのプロセスで実行してみろ。
無事に10000までカウントなんぞできんぞ。
0395374
垢版 |
03/06/25 00:21ID:???
>>394
まともに使えないならいっそ使わないほうが・・・
0396nobodyさん
垢版 |
03/06/25 00:39ID:???
>>395
はぁ?
全体に一度だけかけろとか言うのか?
それでも壊れる。

何がまともに使えないだよ・・・
ルーチン呼び出すのに使えるも使えないもないだろヴォケ。
文句言う前に試せやハゲ。
試して、壊れなかったら文句言いにこいや。
0397374
垢版 |
03/06/25 00:47ID:???
ルーチンをまともに使えないヤシが晒されるスレはここでつか?
0398nobodyさん
垢版 |
03/06/25 00:57ID:???
>>397
だから。
試せってよ・・・。
試しもしないで、使えてねーとか、使い方悪いとか。
そんな事言われても、説得力ねーっちゅーの。

こういう使い方したらファイル壊れないとか、
このタイミングでルーチン呼び出したら大丈夫だとか、

まー試しもしないで語ってるヤツに、
ロクな答えなんて返ってきそうにないけどな。
0399371
垢版 |
03/06/25 00:59ID:Q5i43+wA
>>396
> 全体に一度だけかけろとか言うのか?

だってそうしないとカウントが飛んじゃうでしょ。

> 試して、壊れなかったら文句言いにこいや。

一度に5プロセス動かして1000までやってみたけど壊れないね。
FreeBSD2.2.2 + Perl5.6.0だけど。

OS何使ってて壊れるの? > 396
0400371
垢版 |
03/06/25 01:03ID:Q5i43+wA
プロセスを7つに増やしてテスト中。
時々ロックファイルが消えるな・・・。renameしかしてないはずなので、
ファイルシステムのバグか?

でもデータが壊れるということは今のところない模様。テスト続行中。
0401371
垢版 |
03/06/25 01:13ID:Q5i43+wA
FreeBSD2.2.8 + Perl 5.6.0でも実験したところ、20000件超えてるけど、特に問題なし。
FreeBSD2.2.2の方も、10000件行ってエラーなし。
合計30000件実験してみたけど衝突は起こってない模様(プロセスの譲り合いで片方のプロセスが
ブロックする現象は見られたが)。

単にrenameシステムコールが衝突するようなファイルシステムを持つOSを使ってるだけ
とか、そういうオチじゃなくて?>>398
0402371
垢版 |
03/06/25 01:22ID:???
ファイルが消える現象は、ロックファイルをディレクトリにすることで回避
# mkdir lockdir/lockfile

で、20プロセス同時起動で、30000件やってみたけど、全く問題なし。
さすがに30000回連続で20プロセスが同時に1つのファイルにアクセス
する状況はありえないだろうから、少なくともウチの環境上では
きちんとロック機構が機能してると思われる。

で、たった2プロセス同時起動で10000件持たないファイルシステムを
持つ環境がどんな環境なのかとても気になるので早く教えてください>>398
あなたの言う条件↓は満たしましたよ。

> 文句言う前に試せやハゲ。
> 試して、壊れなかったら文句言いにこいや。
0403nobodyさん
垢版 |
03/06/25 01:30ID:???
おっと、ご苦労さん。
マジで?
ファイル壊れない?
こっちの環境は、Win2kだけど。

> 単にrenameシステムコールが衝突するようなファイルシステムを持つOSを使ってるだけ
んな訳ない。
2kで、そんなバグ聞いた事ない。

ずっとテスト環境は2kだったからなぁ〜。
とりあえず、こっちもVineの環境があるから、そっちでも試す。

>で、たった2プロセス同時起動で10000件持たないファイルシステムを
>持つ環境がどんな環境なのかとても気になるので早く教えてください>>398
煽りですか。
あんた、一言多いね。
0404371
垢版 |
03/06/25 01:49ID:???
> こっちの環境は、Win2kだけど。

多分そのせいじゃないかなぁ。ファイルシステム何になってます?
こっちは今のところ30プロセス同時起動で30万件ノンストップで突破してるので、
スクリプト自体に問題があるとは思えない。
まぁ、このルーチンはrenameの堅牢性に頼ってるので、その点において汎用性は
薄いということを証明する形にはなったかも。

> 2kで、そんなバグ聞いた事ない。

1秒間に同じファイルを数十回renameする必要性ってあまりないからなぁ。
renameのファイルの取り合いって普通の状況だとまず起こりえないし。
ソース読んだら分かると思うけど、renameの空振り以外に原因は考えにくい
ので、再現性あるなら追試してレポート出してみたら?
0405nobodyさん
垢版 |
03/06/25 02:14ID:???
>>404
ファイルシステムは、もちろんNTFS
Vineで試してみた。
たしかに、2kの時は途中ファイルが壊れてカウントが1に戻ったりしたけど、
Vineはそんな事なかった。
・・・が、おかしい。
3つのプロセスで動かしたが、ログがおかしい。
同じ数字のカウントをする場面がある。
3つのプロセスでカウントしていったら、
同じ数字がカウントのログとして出るのはおかしいでしょ?

そっちでは、ちゃんとカウントしていってる?
0406371
垢版 |
03/06/25 02:28ID:???
>>405
>>394のソース直した?部分的でなく、全体をロックで囲まないと誤動作するよ。
print文の直上直下にあるunlockとlockの2行を外せばうまく行くと思う。
0407nobodyさん
垢版 |
03/06/25 02:44ID:???
>>406
あ・・・悪い。
修正してなかった。
ちゃんと動いてる。
もっと沢山のプロセスと、もっと沢山のループで試したかったけど、
Vineが入ってるPCのCPUが弱いんでやめた。

なんだ・・・今回の実験で、2kがいかに糞なのかが証明されたのか・・・?

結果は、壊れないファイルロックが存在したって事か?
・・・俺が、間違ってますた。 スマソ
0408371
垢版 |
03/06/25 11:01ID:???
>>407
> 結果は、壊れないファイルロックが存在したって事か?

昨日、あのまま30プロセス同時起動のまま寝て、今朝見たら400万件を
突破してました。もちろんノンストップで。

30プロセスが400万回連続で殺到しても平気だということなんで、
少なくともウチの環境では、ほぼ「絶対に壊れないロック機構」と言い切って
差し支えないと思う。

どうでもいいけど、このテストスクリプトだと、count.txtを書き込みオープンした
瞬間にプロセスが落ちるとカウンタリセットされるよね。堅牢なスクリプトを作ろうと
思ったらそこまで気を遣う必要があるかも。

>>377
flockに書き換えて同じ事やってみたけど、20プロセス10万件で壊れずに
行ってます。やっぱりOSの問題か、flock over networkが原因ではないかと。

スレ違いなようなので、この辺で。
0410368
垢版 |
03/06/25 18:02ID:???
>>393さんがおっしゃってる通りたしかにスレ違いですが、
とても興味深い話題をありがとうございます。

>>402さんがおっしゃってることを試す価値はありそうなので、
とりあえずファイルを使うロックから、
ディレクトリを使うロックに変えてみたいと思います。
0413nobodyさん
垢版 |
03/06/26 06:18ID:EBHZ+AEW
.
0415412
垢版 |
03/06/26 10:55ID:???
>>414
お客さんでそういうトコ、多いんですよ(萎
だから仕事でflock使う際は、インストール先の
OSとファイルシステムは必ず確認。
0417nobodyさん
垢版 |
03/06/26 12:53ID:???
>>414
十分有り得るよ。うちの大学もそうだし。
0420nobodyさん
垢版 |
03/07/06 16:49ID:orJjX/H+
別スレでrename失敗どうたらこうたら、言ってるんですが、
そんなにrename失敗することあるんですか?
0422nobodyさん
垢版 |
03/07/06 17:08ID:GI5yk6yl
権限があれば100%renameできるんですね?
0428nobodyさん
垢版 |
03/07/06 23:40ID:???
将軍が彪の追い出しに成功してボリボリ食われちゃう一休さんの>422
0430山崎 渉
垢版 |
03/07/15 11:08ID:???

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0433山崎 渉
垢版 |
03/08/02 02:24ID:???
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0434ぼるじょあ ◆ySd1dMH5Gk
垢版 |
03/08/02 04:52ID:???
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ
0435nobodyさん
垢版 |
03/08/06 01:58ID:u4hkzo1r
まだ評価していただけますか?
0437435
垢版 |
03/08/06 02:10ID:u4hkzo1r
それでは。

ttp://www.42ch.net/UploaderSmall/source/1060103401.zip

昔作った掲示板です。今ではもうこんなにかけません。
0438nobodyさん
垢版 |
03/08/06 02:44ID:???
>>437
ぱっとみですが、スコープや、名前空間を理解していらっしゃるのでよく勉強されてると思われます。
私の趣味的にはグロブを使わないようにするともっとよさげかと・・・
0439nobodyさん
垢版 |
03/08/06 03:48ID:???
ttp://www.42ch.net/UploaderSmall/source/1060108917.zip
良かったらお願いします。
使い方はcgi呼び出して?ってリンク見ると大体書いてあります。
典型的な我流でCGIしか書いたことの無い人のソースだとは思います。
非常識な部分があればご指摘頂きたいです。

#普段タブ使っているのですが、環境に依存しそうなので
#アップの際に、全てスペースに変換しました。
#個人的な情報も消してあります。ご理解ください。
0440向こうの472=475
垢版 |
03/08/06 10:05ID:???
>>439
コーディングスレの469さんか。(w

名前空間の扱いに振り回されてる感じがする。
基本的にパッケージ名や定数のハードコーディングは避けた方がいいし、
依存し合うものを別ファイルに分けると見通しが悪くなるだけだよ。

どうしても分けたいのなら各パーツはもっと役割分担を
はっきりさせて汎用性を上げ、OO なスタイルで組むが吉。
0441nobodyさん
垢版 |
03/08/06 10:38ID:???
>>440
ここ過疎なので人すくなくてばれるだろうとは思ってました。。。
分けるのは、基本的に改造向けではじめました。
(HTML部分を分ける、とか。)
あと、機能追加のたびに追加したりとかって感じです。
最初はあまり深く考えないで分けていたんですが
最近えらい悩むようになってしまって
つきつめるとOOPにするしかないような気もしてきてしまします。

次になにか0から書くことがあったら、OOで書きたいとは思います。

これは今ある程度完成してしまってますし
身内で使ってくださる方がいるのであまりスタイルを変えるつもりはないです。

総書き直しでOOにしようとか毎晩のように思ったりするのですが
なかなか手出しする気力も時間も・・・

やっぱOOかー
0442441
垢版 |
03/08/06 10:58ID:???
しかもコーディングスレであとで言われたとこ
直す前のうpしてた ウワーン
0443nobodyさん
垢版 |
03/08/12 15:36ID:QPay4kE6
>>442
age
0444山崎 渉
垢版 |
03/08/15 22:37ID:???
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
0446nobodyさん
垢版 |
03/08/31 01:55ID:6GeG39LL
Blogの試作公開

http://ex.1000gex.net/blog.zip

common.phpで初期設定。

排他制御も何も入れてないがとりあえず動いた。
これからトラックバックを盛り込むけど難儀するだろうなぁ
0447nobodyさん
垢版 |
03/08/31 02:19ID:???
何?評価して欲しいの?
ただの宣伝?
0448nobodyさん
垢版 |
03/08/31 02:27ID:6GeG39LL
ダメ出しきのん。

SAFE_MODEでさっそく引っかかったが
0451nobodyさん
垢版 |
03/08/31 11:38ID:???
こちら素人だが、ざっと読んで気づいた点を。
script書き始めなら上々の滑り出しだと思う。

■L38の $ip のダブルクウォートは意図不明。

■” と ’ が混在してるけど、このスクリプトで使われてる ” は上記をのぞいて ’ に統一可能。

■L41は、$newdata = $newcont . '<>' . $_SERVER['REMOTE_ADDR'] ; と書けば十分なのでは。

■関数名とレフトブラケットの間に半角スペースがあったり無かったりする。これは趣味だから
どう書いてもいいと思うが、普通は入れない。制御語(ifとかforとか)の後には入れる。そうすることで
関数と制御構造を見分けやすくする。カラーリング機能のないエディタではこの方が見やすい気もする。
いずれにせよ、どっちかに統一したほうがよいと思われ。

■切り詰めを忘れている。ので、現データが 13<>127.127.127.127 で上書きデータが、14<>25.25.25.25 だった
場合、14<>25.25.25.257.127 に。書き込んだ後で、ftruncate(); を使ってファイルを切り詰める必要あり。
0452nobodyさん
垢版 |
03/08/31 11:40ID:???
■L29の rewind(); は意図不明。
ログファイルが壊れる(例えば 8424<>127.0.0.1420<>127.0.0.8420<>127.0.0.842の ように)から
入れたのなら、アイディアとしては◎だが、スマートな処理とはいえないかと。

■あと、排他制御にバグがあるのでは。
ロックがかかっていても、fopen(); も flock(); も、 warning や fatal error (noticeも) を吐かないため、
処理が続行する。排他制御になってもならなくてもこのスクリプトは処理を最後まで実行するので、flock(); は
ちゃんと働いてない。
実際には起こらないかも知れないが、論理上、ロックがかかっているために L32 の fgets(); が失敗して
$buf に false が入ってカウンターが0に戻る可能性がある。L26でロックが取れなかった場合、
つまり前のリクエストを処理中の可能性がある場合、書き込みをスキップするかスクリプトを終了
するかブロックモードで待機させる必要があると思う。http://jp.php.net/flockにあるとおり、flock(); は
失敗すると false を返す。

■同じ理由で、前のロックが邪魔してロックがかかっていないのに書き込みに進行してしまうことがある。
書き込みがいくつも重なると、dat の内容がが妙なことになる予感。ここらあたりを rewind(); が力技で
解消しているように見える。
0453nobodyさん
垢版 |
03/08/31 21:50ID:???
本7に対してそこまでしなくていいのに
0454nobodyさん
垢版 |
03/08/31 21:56ID:6GeG39LL
ちなみにサンプルページ

http://s2.arigato3.net/~hon7/blog/

ハイブリッドP2Pによるトラックバックを考えてます
0456nobodyさん
垢版 |
03/09/01 01:41ID:???
相変わらず発言が電波過ぎる…
0457ガイキチ厨房
垢版 |
03/09/01 16:10ID:???
>>452

詳しく指摘していただきありがとうございます。
とりあえず''に統一し、関数名とレフトブラケットの間のスペースを
制御構造のみ入れるようにしました。

また、書き込み処理を行った後に、

 // ファイルを切り詰める
 ftruncate($fp, ftell($fp));

という処理を加えました。

ロックのバグについてなのですが、Googleで調べたところ、
flockはデフォルトでブロックモードになっているらしいのですが、

http://itbtech.itboost.co.jp/perl/perl_06.php

よろしくお願いします。
0459nobodyさん
垢版 |
03/09/01 23:17ID:???
Perlでも評価してもらえます?
0461nobodyさん
垢版 |
03/09/02 16:15ID:???
>457
ああごめん。Manualみたらおもっくそそう書いてあった、、。
flockでとまるから一般の環境なら多分大丈夫だね。
こっちの検証スクリプトの間違いなのでflockとrewindの話しはなかったことに。
秒間50リクエストくらいでは問題なかったです(php4.3.0 apache1.3.27 RHLinux)。
ftruncate ( $fp , ftell ( $fp ) ) ; は ( $fp , strlen ( $newdata ) ) ; なんちゅう書き方もある。
0462ガイキチ厨房
垢版 |
03/09/02 19:51ID:???

なるほど、参考になりました。ありがとうございます。
0463nobodyさん
垢版 |
03/09/03 02:03ID:6rADPhxn
とある会社の部活動のHPを管理している者です。

Web上で部の共有資産の貸し出し申し込み等の管理を行えるといいなぁ、と思いいろいろとCGIを探してはいるのですがなかなか見つかりません。
探しているのは、次のようなCGIです。

1.画面で借りたい物を選択・自分の名前・貸出期間等の入力、申し込み
2.画面上では「貸し出し中」等に表記が変化(それか削除されるなど、申し込みが行えない状態に変化)
3.sendmailが使えないサーバなので、申し込みがあったことをログに吐き出し、管理人が定期的にそれをチェックし貸し出す

こういうものです。
サーバはinfoseekのiswebでPerl、Python、Ruby、PHPが使えます。

ショッピングカートCGIを活用してもいいなと思ったのですが、sendmailを利用する物がほとんどで、上記のようにログにのみはき出す物はあったことはあったのですがシェアウェア(\15K!)でした。
それほど資産の数が多いわけでもなく、貸し出し回数もそんなに多くないので、15000円もかけるわけにはいきません。
出来れば無料、もしくは1〜2千円程度で利用できるCGIがありましたら、教えてください。

よろしくおねがいします。
0465sage
垢版 |
03/09/03 12:28ID:Udj8Y4pI
>464

463です

え〜と。
スレ違いだ、ということですか…?

…すいませんでした。
0466nobodyさん
垢版 |
03/09/03 13:26ID:???
sageはmail欄でw。
どっかに「こんなCGI探してます」的なスレあったハズだよ。
0467nobodyさん
垢版 |
03/09/03 13:44ID:???
>>465
>スレ違いだ、ということですか…?
スレ違いじゃないと思うんだったら自作CGIへのリンク貼れよ。
自作CGIを評価するスレなんだからさ。
0469463
垢版 |
03/09/04 00:28ID:???
>>464
>>467
ご迷惑をおかけしました。

>>466
>>468
そこに行ってみます。ありがとうございます
0471nobodyさん
垢版 |
03/10/02 22:11ID:???
perlでRead-Write Lockを実装してみますた。

複数プロセスでの10,000件書き込み耐久試験もクリアしたっぽいです。
ただ、ちょっと遅いように感じるのですがどでしょ?

http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/index.html
0473nobodyさん
垢版 |
03/10/07 02:23ID:86/MwT3y
知識ゼロからがんばってXML化にこぎつけました。
スタイルシートだけでWebデザインが可能です。
PHP4+MySQL

http://arigato3.s36.xrea.com/x/bbs.php
0474nobodyさん
垢版 |
03/10/07 03:18ID:???
>>473
すごいね。どのくらいすごいのかいまいちわからんけど。
どのくらい時間かかった?
0476nobodyさん
垢版 |
03/10/07 06:12ID:???
>>473
ダメXMLの見本として宣伝してもいいですか?っていうくらいダメなXML。
0478nobodyさん
垢版 |
03/10/07 09:34ID:86/MwT3y
>>476=印刷屋をクビになったオヤジ
0479nobodyさん
垢版 |
03/10/07 09:34ID:86/MwT3y
>>474
片手間で1週間ぐらい
0480nobodyさん
垢版 |
03/10/07 18:52ID:???
> 知識ゼロからがんばって XML化にこぎつけました。
            ___Λ____
           |知識ゼロのまま|
0482nobodyさん
垢版 |
03/10/08 10:35ID:???
よいXMLの見本が見たい。
0483nobodyさん
垢版 |
03/10/19 04:34ID:faEGA12Q
●●●マスコミの 「盗聴/盗撮」 は許されるの?その4●●●   http://natto.2ch.net/mass/kako/994/994602694.html
62 名前: 文責:名無しさん 投稿日: 2001/07/10(火) 12:21
小型盗聴器、電話盗聴、web(電子メール)盗聴、郵便物の開封、
集合住宅の隣に引っ越してきて壁に聴診器、または集音マイクを向ける。
関係者からの聞き込み、ごみあさり、ストーキングにより行動パーターンの把握、
行動パターンを調べた上での待ち伏せ。全部、人海戦術を使えば十分可能です。

323 名前: 文責:名無しさん 投稿日: 2001/07/30(月) 20:48
集団で盗聴なり、付きまといなり、身辺調査なりした後で、集めた個人情報を利用して、
メディアを通じて本人にしかわからないように「監視してる」とほのめかしたり。
待ち伏せや尾行などしておいて、本人の前で「監視してるぞお〜」と、嫌がらせをしてみたりする。
これを一定期間継続して繰り返す。
一定期間、上記の嫌がらせを繰り返すと、加害者がすでに嫌がらせをしていなくても、
被害者は、ずう〜っと嫌がらせが続けられてると思い込んでしまう。
(痴漢の被害者が、外であった人が全員痴漢だと思い込むのと同じ)
それと同じように、ここのスレッドに書かれている、盗聴した情報を二次利用する嫌がらせを
やっていないときでも、被害者は自分から自分と関わりがある
情報をメディアから探し出して自分に関係があるのではないかとこじつけてしまう(関係妄想)。
関係妄想を引き起こすように嫌がらせを行うそれ自体がマインドコントロールの一過程である。
被害者が関係妄想を引き起こした時点で今度は精神病にかかったと噂を流して、さらにからかう真似をする。
ノイローゼになるように追い込んで、更に自殺するように持っていこうとする。     
被害者がこういった心理状態になるのを嫌がらせの関係者は経験的に知っているのだろう。
0485nobodyさん
垢版 |
03/12/09 13:27ID:Dust1o+d
すいません、午前中探したんですけど、見つかりませんでした。

パソコンと携帯3社兼用の掲示板で、スレッドまたはツリー表示でかつ
パスワードで入る人の管理が出来るCGIご存じありませんか?
スレッド、パスワードどちらかだけだとあったんですが・・・。
0486nobodyさん
垢版 |
03/12/10 13:25ID:/scbZ0TM
誤爆でしたとさ
0487SERA
垢版 |
03/12/10 21:19ID:cJpFW25/
箱庭諸島PHP版の改造版、箱庭諸島S.Eを今日公開配布開始しました。
0489nobodyさん
垢版 |
03/12/19 17:18ID:s0hPhfIy
http://erobon.e-un.jp/
これはどうでしょうか?
デザイン以外は自分で作りました。
0491nobodyさん
垢版 |
03/12/20 01:11ID:A80S/toC
>>490
CGIです。
サーバーサイドで動いているのでCGIです。
もっと勉強してください。
0493nobodyさん
垢版 |
03/12/20 01:26ID:m9BC3a2H
>491-492 ネタは他所でやれよ馬鹿
0494nobodyさん
垢版 |
03/12/20 01:27ID:A80S/toC
>>492
いま検索して調べたら
metaタグの後にtitleタグを書いてました。
0495nobodyさん
垢版 |
03/12/20 02:56ID:???
>>491
あのね、見た目とかを評価してもらうスレじゃないの
ソースを公開してちょうだい
0496nobodyさん
垢版 |
03/12/20 02:58ID:???
> サーバーサイドで動いているのでCGIです。

CGIは動いたりしない。
0497nobodyさん
垢版 |
03/12/20 03:19ID:???
>もっと勉強してください。

悪代官が黄門様に無礼者と言ってるのを思い出しちゃったw
0498nobodyさん
垢版 |
03/12/20 10:48ID:rKU28so3
>>496
CGIとはWEBサーバーがWEBブラウザからの要求に応じてプログラム
を起動するための仕組みです。

”CGIは動いたりしない。”
馬鹿か?
0499nobodyさん
垢版 |
03/12/20 10:49ID:rKU28so3
>>498

俺は悪代官だよ~W~
0502nobodyさん
垢版 |
03/12/20 14:07ID:???
CGIはシステムでも仕掛けでもない。
インターフィエスの一仕様。

モジュールからプロセス作ることもできるが、
あれもCGI?
0503nobodyさん
垢版 |
03/12/20 18:53ID:FBPjlTLi
>>502
どうせperl=cgiとか
まだ思ってるアフォだろ?
0504HTTP/1.1 200 OK
垢版 |
03/12/20 21:23ID:???
unlessはほかの言語と混同するからやめれ
とか書いてある本があった気がする
ほかの言語を使わなければいいだけの話なのに・・・
0505nobodyさん
垢版 |
03/12/21 00:57ID:???
>>504
マジ?

それって、if ははほかの言語と混同するからやめれというのと同じことだよね
0506nobodyさん
垢版 |
03/12/21 15:53ID:???
汎用的なプログラミングの作法を身につける為なんじゃないかな?if だと他の言語でも大抵応用が効く。
同じような理由でperlの$_(暗黙の代入)はなるべく使うなとか書いてる本もあったよ。

0507nobodyさん
垢版 |
03/12/22 08:45ID:???
>>506
なんだそりゃ?(藁
じゃあ混同しやすい elsif は使わないほうがいいってことか?
0509nobodyさん
垢版 |
03/12/26 11:25ID:???
>>508
差別はイクナイ!
何国ってのがどこのことだか知らんが,何国の人に失礼だよ(藁
0510nobodyさん
垢版 |
03/12/26 20:54ID:???
>>509
ハァ?
あたまのよわいのがなんにんか・・ って書いてあるが、どう読んだら何国の人になるんだ?

502,504,506,508が(ry
0512nobodyさん
垢版 |
03/12/27 06:08ID:???
>>510
「なにじんか」って読んだんだろ。>>511の言うように洒落だろうがつまらん。
0513nobodyさん
垢版 |
03/12/31 15:09ID:OIDb7RDT
表計算ができるランキングCGIを作ってみたので評価お願いします。
http://ssr.xrea.jp

けっこういい出来に仕上がったと思うけど、初めての人は操作にとまどうかも
0514nobodyさん
垢版 |
04/01/05 13:20ID:8h9t8BrG
>>513
落としたYo
とりあえず使えそう・面白そうな物だったら、朴らせてもらうわ(w
0515nobodyさん
垢版 |
04/01/12 07:57ID:fR13iSUk
age
0518nobodyさん
垢版 |
04/01/17 18:12ID:???
上と下に出てる「1」って何だ?
0519nobodyさん
垢版 |
04/01/17 19:01ID:???
>>516
http://fine.tok2.com/home/moritomo/cgi/accesstakelog.txt
http://fine.tok2.com/home/moritomo/cgi/admin_remote_log.txt
http://fine.tok2.com/home/moritomo/cgi/akusesu.txt
http://fine.tok2.com/home/moritomo/cgi/countlog.txt
http://fine.tok2.com/home/moritomo/cgi/hatugen.txt
http://fine.tok2.com/home/moritomo/cgi/newaccesslog.txt
http://fine.tok2.com/home/moritomo/cgi/newcount.txt
http://fine.tok2.com/home/moritomo/cgi/newdomain.txt

以下略


ヴァカですか?
0521nobodyさん
垢版 |
04/01/18 02:22ID:???
ところで、ちゃんと評価してるのって最初のほうだけだね。
0522nobodyさん
垢版 |
04/01/18 03:41ID:???
>>521
・ここは見た目じゃなくコードを評価するスレだ。
・use strict; しろ。
・perlstyle 読め。
・デカいの持ってきても面倒だから読まんぞ。

…のどれかに該当していたら、まともなレスは返ってこない。
0523nobodyさん
垢版 |
04/01/18 21:22ID:???
コードの見た目を評価するスレの間違い。
0524>>516
垢版 |
04/01/25 15:17ID:yPaa9elS
DirectoryIndexの設定をしているtoktokも問題かと思うが。

Forbiddenにしたみたいだけど、
せめてファイル名変えなよ。
0525nobodyさん
垢版 |
04/03/06 14:54ID:???
誰も居ない……ケチつけるなら今のうち。

if-elsifの書き方、
if{
..
}elsif{
..
}
より
if{
..
}
elsif{
..
}
の方が俺にとっては読み易いんだコンチクショー。
0526nobodyさん
垢版 |
04/03/19 18:15ID:???
>>522
perlstyleなんて知らなかった…ありがとう、勉強になったよ。
0528nobodyさん
垢版 |
04/05/09 20:52ID:???
例えば既成の掲示板のCGIとかから

require 'axlog.pl';
AxLog::getlog('ログファイル名','ログ最大記録数');

の用に呼び出して使うアクセス解析。

何となく作ったんですが評価お願いします。

アクセス解析 http://torihamlog.s55.xrea.com/search/axlog.pl.txt
ログビューワー http://torihamlog.s55.xrea.com/search/axlogv.cgi.txt

ここにログビューワを設置して、それにアクセス解析しこんでます。
リモホとかIPとか晒す事になるので困る人は見ないで下さい。
パスワードは 1234 です。
http://torihamlog.s55.xrea.com/search/axlogv.cgi

念のため…コレ呼び出すとログを削除します。
http://torihamlog.s55.xrea.com/search/dellog.cgi
0530nobodyさん
垢版 |
04/05/09 21:49ID:???
>>529
とりあえず axlog.pl をザッと見た感じ。

> 39: my $logfile = ($_[0]) ? $_[0] : "log.dat";
my $logfile = $_[0] || "log.dat";

my $logfile = defined $_[0] && length $_[0] ? $_[0] : "log.dat";

> 48: $ENV{'TZ'} = "JST-9";
local するか、呼び出し元と条件を揃える (設定しない) 。

> 58 〜 62
my($path) = $ENV{'SCRIPT_NAME'} =~ m|^(.*/)|;

ログに ASCII 以外の文字を吐くのはあまりお勧めしない。

あと axlog.pl.txt や axlog.cgi.txt でも「.pl」や「.cgi」は含まれて
いるので CGI プログラムとして動く。Apache のマニュアル参照。
0531nobodyさん
垢版 |
04/05/09 22:26ID:???
>>529
axlogv.cgi 。

> 6: use vars qw/$pw $logfile $gzip_send $gzip/;
不要。

> 47 〜 53:
my $gzip = $^O =~ /Win/
  ? "gzip.exe -1 -c"
  : "/bin/gzip -1 -c"
;

> 69: if ($mode eq "css") { Style_Sheets(); }
わざわざ CGI で吐かせる理由は?

> 74: else { print "Status: 403 Forbidden\n\n"; exit; }
エラーメッセージを吐いた方が親切。

> 256: Content-type: text/plain; charset=Shift_JIS
text/css
0532528
垢版 |
04/05/10 19:23ID:???
>>530-531
評価ありがとうございます。
色々参考になります。

cssについてはファイルを一つにまとめたかったからです。
やっぱあんまり良くないですか?

>> 74: else { print "Status: 403 Forbidden\n\n"; exit; }
>エラーメッセージを吐いた方が親切。

if ($mode eq "css") { Style_Sheets(); }
elsif ($pass ne $pw) { Error('パスワードが違います。') }
elsif (($pass eq $pw) && ($mode eq "view") && ($ENV{'REQUEST_METHOD'} eq "POST")) { View(); }
else { Pass_form(); }

こうゆう風にしようと思っています。
0533nobodyさん
垢版 |
04/05/11 00:31ID:???
>>532
・CSS を変更する為にスクリプトを編集する危険を冒す必要がある。
・外部に CSS を持つのに対し、常に二倍の回数実行される。
・CSS を使い回す時に悩む事になる。

これらのデメリットを考慮の上で、なお一つにまとめるメリットの方が
勝ると判断したならいいんじゃないか?
0534528
垢版 |
04/05/14 20:45ID:1r/FkAS3
>>532
自己レス
すげー馬鹿なこと書いていた

if ($mode eq "css") { Style_Sheets(); }
elsif (($pass) && ($pass ne $pw)) { Error('パスワードが違います。') }
elsif (($pass eq $pw) && ($mode eq "view") && ($ENV{'REQUEST_METHOD'} eq "POST")) { View(); }
else { Pass_form(); }

たぶんコレでいいかな…

作った動機はなんとなくなんだけど、実用性とかどうでせう?
一応CGIの設置とかできて、ほんのちょっとだけいじれる程度人向けのつもりです。
0537nobodyさん
垢版 |
04/07/04 05:07ID:???
>>535
とりあえず画像のファイル名を変えた方が良いよw
20点頂きました
0538nobodyさん
垢版 |
04/07/04 05:12ID:???
>>535
もじゅーるは使えない鯖なんでつか?
使えるんなら使ったほうがいいでつよ。
Image::Magick、CGI、Jcode等々
何に使うのかは自分で調べてね。

EUCで書いたり表示したりしたほうがいいと思うけど、Shift_JISでやりたいのなら反対しないさ。

所々myを付けているが、どうせなら全部に付けちゃいな。
strictしろってこった。
ついでにHTML的にも4.01strict すれば?
0540nobodyさん
垢版 |
04/10/08 20:39:40ID:HUGW4EIR
タイトル::時刻::内容\n

というようなデータが数行あるような場合
それらを読んできて切り分けるって処理を
してます。
これの評価お願いします。

sub split_data{

my @ref,@tmp,%hush;
@tmp = @_;

for (@tmp){
chomp;
($hush{title},$hush{time},$hush{contents}) = split /::/;
push (@ref,{%hush});
}

return(@ref);

}

@tmp = ("a::b::c\n","d::e::f\n","g::h::i\n");

@ref = split_data(@tmp)

for(0..$#ref){
print "title:".$ref[$_]->{title};
print " time:".$ref[$_]->{time};
print " contents:".$ref[$_]->{contents}."\n";
}
0541nobodyさん
垢版 |
04/10/09 00:21:55ID:???
>>540
myで複数宣言するときは()がいる
hushじゃなくてたぶんhashね. 連想配列っていみなら

ハッシュのスライスを使うとエレガントかも
@hash{qw/title time contents/} = split /::/;

foreachつかえよ
for(...$#ref)
0542540
垢版 |
04/10/09 02:08:52ID:???
541>

>ハッシュのスライスを使うとエレガントかも
>@hash{qw/title time contents/} = split /::/;

ありがと、参考になりました。

my は複数でも()いりませんよ。バージョンによるだろうけど
最後に、今更foreach使ってる人いるんですか?w
0543nobodyさん
垢版 |
04/10/09 02:43:14ID:???
>>542
#--- test.p ---
use strict;
my $foo, $bar, $baz;
__END__

> /usr/local/bin/perl -v
This is perl, v5.8.5 built for i386-freebsd-64int
<snip>
> /usr/local/bin/perl -wc test.p
Parentheses missing around "my" list at test.p line 2.
Global symbol "$bar" requires explicit package name at test.p line 2.
Global symbol "$baz" requires explicit package name at test.p line 2.
test.p had compilation errors.

> /usr/bin/perl -v
This is perl, version 5.005_03 built for i386-freebsd
<snip>
> /usr/bin/perl -wc test.p
Parens missing around "my" list at test.p line 2.
Global symbol "$bar" requires explicit package name at test.p line 2.
Global symbol "$baz" requires explicit package name at test.p line 2.
test.p had compilation errors.
0544nobodyさん
垢版 |
04/10/09 03:20:52ID:???
>>541 >foreachつかえよ
>>542 >今更foreach使ってる人いるんですか?w

for と foreach は単なるシノニムなので、その表現は正しくないな。
foreach (LIST) BLOCK を for (LIST) BLOCK と略せるのと同様に、
for (EXPR; EXPR; EXPR) BLOCK を foreach (EXPR; EXPR; EXPR)
BLOCK と書いてもエラーにならない。

foreach ループを意味するところで foreach と「書け」という >>541
アドヴァイスは論拠の確かな正しいものだ。しかし Perl では C 風の
for ループを使う機会が foreach ループに比べて圧倒的に少ない上、
人間の目からも for ループと foreach ループの区別は容易なので、
砕けた流暢な Perl を目指すならこだわる必要のない部分だと思うな。
0545nobodyさん
垢版 |
04/10/09 05:06:54ID:???
>>540
%hush(多分hash?)の宣言の位置。
GCのコストを考慮した場合に、変数の再利用をするはあるけど...、
ループないで初期化してないとフィールドの数が少ない時に困るよ。

split/::/の代わりに正規表現を使ってデータを切り出すと、
データのチェックとsplitを同時にできて便利。

chompはデータ格納前に済ませておいた方が良いんじゃないかな。chomp(@tmp)
もしくは、大抵はファイルから読み込むだろうからその時に。

0546540
垢版 |
04/10/09 05:35:12ID:???
>>544
どうもありがとう。foreachは普通に使えるんだろうけど、
大抵forで済ませてしまうのです。言い方悪かったです、スイマセン。

>>545
ありがとうございます。

>ループないで初期化してないとフィールドの数が少ない時に困るよ。
というのは、forのループ内で undef(%hush); (ほんとはhashでしたw)
でいいですか?
あと、フィールドの数が少ない時というのはどういうことでしょうか?

>split/::/の代わりに正規表現を使ってデータを切り出すと
どう書いたらいいのか思いつきません。宜しかったらご教授下さい。

>chompはデータ格納前に済ませておいた方が良いんじゃないかな。
そうですね。

open(FH,"file_name");
@tmp = <FH>;
chomp(@tmp);
close(FH);

0547541
垢版 |
04/10/09 11:14:32ID:???
言いたかったのはforeach (@ref)にしろよってことね
別にfor (@ref)でもいいかもしれんが
あと>>543読んだか? myは複数宣言するときは()いる

>>546
>ループ内で初期化
for(hoge){
my %hash;
statement;
}
こういう事だと思う
0548540
垢版 |
04/10/09 12:28:12ID:???
my () つけなくてもエラー出てないです。 という事は
省略も可って事ではないでしょうか?
0549nobodyさん
垢版 |
04/10/09 14:26:51ID:???
>>548
エラーにならないのは strict 'vars' 宣言が無いからだ。
my $foo, $bar, $baz; という文自体は文法的には間違いじゃないが、
my は , より優先順位が高いので、my($foo), $bar, $baz; と書くのと
等価になる。

#--- test.p ---
my $foo, $bar, $baz;
print defined $main::{$_} ? "'$_' is global.\n" : "'$_' is rexical.\n"
  for qw(foo bar baz);
__END__

> perl -w test.p
Parentheses missing around "my" list at test.p line 1.
Useless use of a variable in void context at test.p line 1.
Useless use of a variable in void context at test.p line 1.
Name "main::bar" used only once: possible typo at test.p line 1.
Name "main::baz" used only once: possible typo at test.p line 1.
'foo' is rexical.
'bar' is global.
'baz' is global.
0550nobodyさん
垢版 |
04/10/09 17:41:00ID:???
>>546
> あと、フィールドの数が少ない時というのはどういうことでしょうか?
これは、今回のケースでは問題なかったです。

でも、変数を再利用する時は気を付けないと、前の値が残っていたり、
意図しない場所の値を書き換えてしまったりするので注意。
例えば、pushの所を \%hash とりファレンスを使うように変更した場合。

my (@ref, %hash);
foreach (@_) {
# @refの中の前の値を上書きすることになる
# {%hash}とした場合は、@refにはいってる値はコピーなので影響ない
@hash[qw/title time contents/] = split/::/;
push(@ref, \%hash);
}

my (@ref);
foreach (@_) {
my %hash;
@hash[qw/title time contents/] = split/::/;
# {%hash} でも期待通りに動作するが、余分なコピーを生成
push(@ref, \%hash);
}

速度とかを重視するなら >>540 が効率良さそうだけど、(多分)
バグとかみつかった場合に変数のスコープが広いと特定するのが困難になる。

>>542
> my は複数でも()いりませんよ。バージョンによるだろうけど
他の方に指摘のある通り。
最低限 use strict; use warnings;(もしくは -w) を宣言してないとPerlは教えてくれない。
0551nobodyさん
垢版 |
04/10/09 18:04:19ID:???
ここってものすごいでかいスクリプトでも細かい所まで見てくれるの?
0552nobodyさん
垢版 |
04/10/09 18:09:49ID:???
>>550 何かおかしな日本語だった。訂正
s/他の方に/他の方からも/

あと、正規表現を使った方法を書き忘れてたのでついでに、、
例えば time が整数の場合の例

if (/^(.+)::(\d+)::(.+)$/) {
@hash{qw/title time contents/} = ($1, $2, $3)
}

0553nobodyさん
垢版 |
04/10/09 19:39:15ID:???
>>551
読むに耐えうる書き方&内容ならな。
KENTレベルなら却下
0554nobodyさん
垢版 |
04/10/09 22:16:04ID:???
>>553
オブジェクト指向とか頑張ってやってみたけど中途半端になったようなのでも大丈夫ですか?
0555nobodyさん
垢版 |
04/10/09 22:37:35ID:???
何書いたって叩かれるんだから、結城出していいと思う
0556540
垢版 |
04/10/09 23:53:30ID:???
ほんとにこんなに色々な方が、教えてくださるとは思ってませんでした。
どうもありがとうございます。
特にエレガントな方法を教えてくださった542氏
ハイレベルな(少なくとも今の私には)指摘をしてくれた
545=550=552氏には感謝します。
その他あのようなケチなコードに意見を下さった方々ありがとう。

またお世話になるかもしれません。m(_ _)m
0557nobodyさん
垢版 |
04/10/10 20:44:07ID:???
> my は複数でも()いりませんよ。バージョンによるだろうけど
> 最後に、今更foreach使ってる人いるんですか?w
こんなこと言うやつはもう来なくていい
0558540
垢版 |
04/10/11 01:40:27ID:21NinhME
ごめんね
0563nobodyさん
垢版 |
05/01/23 00:46:42ID:vqv+/2ig
誘導されてきました。
評価というか不具合の問題です


初めてperl書いてみました。
簡易的な計算のプログラムを作ってみたんですがうまく動作しません。

ちょっと見て頂き、不具合等御指摘下さい
特定の計算式で、入力(1項目だけセレクトボックスにより選択)した数値を計算するものです。


ソース
http://tool-ya.ddo.jp/2ch/trash-box/contents.jsp?file=20050123003423509.txt

URL
http://sr-cafe.chu.jp/kok/calc.html
0564nobodyさん
垢版 |
05/01/23 03:00:10ID:3FhDUp9J
>>563
ソースはマンドクサイのでちゃんと読んでないけど、
文字コードと改行コードの問題の様な希ガス。
0565nobodyさん
垢版 |
05/01/23 13:10:26ID:???
>>563
calc.html

× <SELECT name="set" name="s1">
○ <SELECT name="s1">
0566nobodyさん
垢版 |
05/01/23 20:04:18ID:???
>>563
ReadFormData(*FORM); → %FORM=&ReadFormData;
print <<END_OF_DATA; → print <<"END_OF_DATA";
Content-type: text/html; → Content-type: text/html\n\n

以下 sub ReadFormDataの修正
local(*FORM) = @_; → my %FORM=();
local($buf, $tmp, $name, $value); → my($buf, $tmp, $name, $value);
return %FORM; ← 最後に追加
0567nobodyさん
垢版 |
05/01/24 11:42:30ID:YsLCruPH
>>566
改行コード2つとダブルクォーテーション必要無くね?
0568nobodyさん
垢版 |
05/01/24 12:10:13ID:???
\n\nはいらんね。
ヒアドキュメントのダブルクォートはどちらかというとあったほうが・・・
0569563
垢版 |
05/01/25 02:27:15ID:???
ありがとうございます。
>>566サンの通りにしたり、色々試してるんですがまだ動かないです…
printが閉まってなくてフォームの値を処理出来てないんでしょうか…
0570nobodyさん
垢版 |
05/01/25 04:00:44ID:???
>>569
うちのサーバでスクリプト試したんだけどちゃんと動くぜ。
おまい、サーバに嫌われてるんだ。きっと。

問題は print <<END_OF_DATA 〜 END_OF_DATA までか、
まさかと思うがパーミッションか、perlの指定。

一度 print <<END_OF_DATA 〜 END_OF_DATA を
たいした行数じゃないんだし、print "〜\n"; に置き換えてみ。
それからコメント行やめろ。余計見づらくなる。
0571566
垢版 |
05/01/25 04:01:58ID:???
>>569
今試したら566の変更だけで動いたわけだが。
Content-typeの行はそのままでも良いみたい。
動かないとしたらCGIの設置方法の問題。
まさかとは思うがローカルでテストしてるよね?
0572nobodyさん
垢版 |
05/01/25 04:03:19ID:???
→まさかとは思ってない法則
0573566
垢版 |
05/01/25 04:07:06ID:???
つーか563のソースのままでも、ちゃんと結果出るじゃん。
問題はコードではない予感。
0574nobodyさん
垢版 |
05/01/25 04:14:49ID:???
>>573
経験で言うとさ、ヒアドキュメントはサーバの機嫌で、最初はうまく動作して
くれないことがある。Cookieなんか入れるとどうも変なんだよな。
そういうとき俺はメンドーでも print "〜\n" に置換えてやる。すると、あとは
「ヒアドキュメントでも読込んでやるかぁ」ってことでサーバは折り合ってくれる。
0576nobodyさん
垢版 |
05/01/25 04:34:21ID:???
いや、あるんだって。コード書く時も、こうした方が処理が楽だろ、とか
ムリしなくっていいから、とか気を使ってやると機嫌よくなる。ほんとだぜ。
0578nobodyさん
垢版 |
05/01/25 06:47:43ID:???
577はコード丸写しで自作CGIと称してるだろw。
多かれ少なかれ576のような感じはあるな。
0580nobodyさん
垢版 |
05/01/27 18:28:04ID:???
皆さん本当スイマセンでした!
パーミッションの所為だった…
元のままでも566のコードでもどちらでも動きました。

>>571-572
そのとおりです。
ローカルでテスト出来るという事すら知りませんでした。
勉強します。
0581nobodyさん
垢版 |
2005/06/06(月) 19:56:57ID:???
ねるねるねるねは Ψ(`∀´)Ψイッヒッヒッヒッヒ

             _▲_
ねればねるほど  ((φ(..。)  色が変わって

             _▲_
こうやってつけて  р(゚Д゚ )


          *_▲_*
 ウマイ━━━*━ヘ(゚∀゚)ヘ━*━━━━!!!!  テ-レッテレ-♪
0583nobodyさん
垢版 |
2005/09/21(水) 17:05:52ID:54UaWl8q
age
0584nobodyさん
垢版 |
2006/05/18(木) 17:31:45ID:Ip4qBE+B
ttp://c.hibi.info/Apple-1.zip
どなたか評価(清書?)お願いします_ _
指定されたスレの中から前日から当日までの既定の時間にあるレスを抽出して、
そのレスから株価コードを抜き出し株価の前日比、前日比率でソートしランキングを作成した後スレに書き込むツールです。
2chへの書き込み時のCookiee処理に曖昧な点があるのと、処理の最適化をして貰えると嬉しいです。
宜しくお願いします_ _
0585nobodyさん
垢版 |
2006/05/18(木) 22:33:53ID:???
他のスレから来ました。
Perlで他のサイトを取得して表示したいと思っています。
(著作権侵害とかそういうことをしたいのではないです)

お時間のある方にお願いしますが、次のコードで@niftyのトップページを取得してみたら
どうなるか教えていただけませんでしょうか?

print "Content-Type: text/html\n";
print "\n";
use LWP::Simple;
print get( 'http://www.nifty.com/' );

私のところだと、ブラウザ上での表示がぐちゃぐちゃになるんですが…。
0586nobodyさん
垢版 |
2006/05/18(木) 22:56:52ID:???
>585
マルチポストすんな
0588nobodyさん
垢版 |
2006/06/06(火) 15:21:29ID:Re1RmuFG
簡易予定表のようなものを組んでみたんですが、なんだかモッサリしてる気がします。
もっと簡潔に書けるような気がするんですが自分ではこれが限界でした。
あと、ファイルロックのやり方が合っているのか自信がありません。
一応動いていることは動いているんですが、問題はないでしょうか。
改良すべき点、根本的にこういう書き方に直した方が良い、とかあればアドバイスお願いします。
大まかな内容は以下のようなものです。

予定として保存する内容は「予定日(月と日)」と
「予定内容(長くても200バイト程度)」の2つでフォームから渡します。
予定を保存するファイルは月単位で作成します。
例えば2006年6月の予定の場合なら「200606.txt」というファイル名です。
保存するファイルがないときはその都度作成し、

6月1日

6月2日

6月3日
.
.
.
という風に日付だけを先に入れておきます。
保存するファイルがあるときは、
フォームから渡された「予定日」とマッチした日付の次の行に「予定内容」を書き込みます。

内容は以上です。次レスにコードを晒します。
0589nobodyさん
垢版 |
2006/06/06(火) 15:22:42ID:???
# 保存するファイル名
$a = sprintf("%04d%02d",$YEAR,$MON)
$file = "$a.txt";

# 月から日数を出す
if($MON == 1|3|5|7|8|10|12){
$m = 31;
}elsif($MON == 4|6|9|11){
$m = 30;
}else{
if($YEAR % 4 ==0){
$m = 29;
}else{
$m = 28;
}
}

for($i=1;$i<=$m;$i++){
$date .= "$MON月$i日\r\n\r\n";
}
0590後半
垢版 |
2006/06/06(火) 15:23:17ID:???
# 該当する月のファイルがなければ作成
if(!open(IN,"$file")){
open(OUT,">$file")
flock(OUT,2);
print OUT $date;
close(OUT);
}
open(IN,"$file");
flock(IN,2);
@A = <IN>;
close(IN);

# 「予定日」とファイル内の「日付」をマッチングさせて該当日付に「予定内容」を書き込む
$loop = @A;
$i = 0;

while($loop > 0){
if($A[$i] eq $plan_day){# $plan_day = "フォームからの情報(予定日)";
$A[$i] .= "$plan_value\r\n";# $plan_value = "フォームからの情報(予定内容)";
}
$loop --;
$i ++;
}

if(!open(OUT, "+< $file")){&error;};
flock(OUT, 2);
truncate(OUT, 0);
seek(OUT, 0, 0);
print OUT @A;
close(OUT);
0591nobodyさん
垢版 |
2006/06/06(火) 15:45:22ID:???
>>589
まだちゃんと読んでないが…。

>if($MON == 1|3|5|7|8|10|12){
>}elsif($MON == 4|6|9|11){
これって比べてるのは、両方とも $MON == 15 だよね。
どっちの条件にも入らないと思うけど…正しく動作してるの?
0592nobodyさん
垢版 |
2006/06/06(火) 15:51:41ID:???
>$a = sprintf("%04d%02d",$YEAR,$MON)
セミコロンは?
動作するヤツうp
0593nobodyさん
垢版 |
2006/06/06(火) 15:52:34ID:???
ビット演算子を使っているんだ。
高度だな。
0594nobodyさん
垢版 |
2006/06/06(火) 16:09:34ID:???
switch文を使うと見やすいんじゃないかな?

use Switch

switch ($MON) {
case [1,3,5,7,8,10,12] { $m = 31 }
case [4,6,9,11] { $m = 30 }
case [2] { $m = $YEAR % 4 ? 28 : 29 }
else { print "そんな月知らん" }
}
0595589
垢版 |
2006/06/06(火) 16:39:31ID:???
レス遅くなりました。すみません。
該当部分を切り出して動作するコードをUPしてきます。
0596589
垢版 |
2006/06/06(火) 17:02:59ID:???
ttp://up.isp.2ch.net/up/b2611f9a934e.zip
UPしました。パスは「589」です。
日付のところは594さんのアドバイスにしたがって書き換えました。
アドバイスの方よろしくお願いします。
0597589
垢版 |
2006/06/06(火) 17:11:06ID:???
>>591>>592
コードの一部分だけ抜き出してできるだけ短く書こうとしたので
分かりにくかった&書き損じがありました。すみませんでした。

>>594
perlでもswitchが使えるとは知りませんでした。
0598nobodyさん
垢版 |
2006/06/06(火) 17:20:53ID:???
いやperlではswitchは使えない。
0599nobodyさん
垢版 |
2006/06/06(火) 17:24:17ID:???
Switch なんてモジュールがあるのか知らんかった。
0601nobodyさん
垢版 |
2006/06/07(水) 00:26:35ID:???
PerlはPHPとは違ってCPANを探せば考えられる大体の車輪は既にある。
0602nobodyさん
垢版 |
2006/06/20(火) 01:54:40ID:jChy1x4Z
>>596
見れない・・
0603nobodyさん
垢版 |
2006/07/08(土) 12:44:17ID:hGiPCYN9
switchがあったとは・・・
0605nobodyさん
垢版 |
2006/10/07(土) 10:40:01ID:L17fbc1O
@@@
0606nobodyさん
垢版 |
2006/10/11(水) 22:51:05ID:e5FQIx7N?2BP(333)
特定の板のスレタイ検索をして、選んだスレから画像とかのサムネイルを表示するスクリプトを書いてみまスた(・ω・`)
恐ろしく見づらいと重いまスが・・
http://vip.ty.land.to/image/

http://pc8.2ch.net/test/read.cgi/php/1160569533/
でボチボチいじくったり、新しいことやったりしていきたいと思ってまスが、評価して欲しいス(・ω・`)
勉強かねてるので、車輪の再開発なのは承知でス
0607nobodyさん
垢版 |
2006/10/11(水) 23:36:54ID:???
>>606
言葉遣い荒いけど、ばーっと書いた弊害なので許して。
取りあえずぱっとみてこんなもん。
・一部のうpろだは、リファラが不味いと弾かれる。
・画像がない場合の画像を一々作るのは無駄。
・CGIモジュール使え。
・グローバル変数も宣言しろ。
・これは好みだけど、設定の変数はハッシュに纏めた方が分かりやすいこともある。
・メインの流れはブロック作ってラベル付けた方が分かりやすいかも。
・正規表現の|は案外コストがかかる。配列にしてマッチング。
・先頭にrequire バージョン名;
・use warningsは〜?
・汚染チェックもきれい好きな方にはオススメ。
・サブルーチンを先頭で宣言して欲しい。
・変数名に日本語はいやん。
・データーベースつかってほすぃ。
0608nobodyさん
垢版 |
2006/10/11(水) 23:42:15ID:e5FQIx7N?2BP(333)
>>607
おぉぉぉレスもらえたス(;ω;`)アリガタイ
感謝しまス!

>・正規表現の|は案外コストがかかる。配列にしてマッチング。
>・先頭にrequire バージョン名;
>・use warningsは〜?
>・サブルーチンを先頭で宣言して欲しい。
良くわからないス(・ω・`)

>・変数名に日本語はいやん。
英語苦手ス・・・毎度翻訳スかね・・頑張るス

>・データーベースつかってほすぃ。
現在勉強中でス!
生暖かい目で見守ってやってくださいス・・(・ω・`)


やっぱレベル高い人の意見は参考になるス!
文句なし!って言われるようなものをいつか作りたいス(・ω・`)thnkス
0609nobodyさん
垢版 |
2006/10/12(木) 04:41:48ID:???
>>606
うる覚えなんだが
if($i_m_f){
    use Image::Magick;
}
これって意味ないんじゃなかったっけ?
$i_m_fが真ならImage::Magickを使うって事なんだろうけど、
この書き方だと$i_m_fが偽でもImage::Magick呼ぶんじゃなかったっけ?
識者の方レスよろ

ファイルハンドルは大文字で

最後から10行目くらい@cache[$i]は$cache[$i]じゃないの?

print文中の"をエスケープするんならprint qq|ここに"文章"|;
こーすりゃいちいちエスケープしなくておk
0610606
垢版 |
2006/10/12(木) 09:44:51ID:????2BP(333)
>>609
サンクス

>最後から10行目くらい@cache[$i]は$cache[$i]じゃないの?
どちらも同じ意味だったはず
(若干の差はあるかもだが、使い方に大差なしでは?)

>print文中の"をエスケープするんならprint qq|ここに"文章"|;
>こーすりゃいちいちエスケープしなくておk
mjdsk!?
次から挑戦してみる

色々アドバイスやら素敵な解決策をありがとう
0611nobodyさん
垢版 |
2006/10/12(木) 13:46:42ID:???
useするかどうか切り替えたいなら
BEGIN{}で囲ったほうがいいな。
0612nobodyさん
垢版 |
2006/10/12(木) 22:51:01ID:???
>>609
>うる覚えなんだが
http://www.tt.rim.or.jp/~rudyard/hirago014.html

> これって意味ないんじゃなかったっけ?
http://perldoc.jp/docs/perl/5.6.1/perlfunc.pod#item_use_Module_VERSION_LIST

> ファイルハンドルは大文字で
bareword で扱わず変数で取り回す方が今風。
http://www.kt.rim.or.jp/~kbk/perl-5.8/perlfaq5.html#how_can_i_make_a_filehandle_local_to_a_subroutine_how_do_i_pass_filehandles_between_subroutines_how_do_i_make_an_array_of_filehandles

>>610
> どちらも同じ意味だったはず
http://www.kt.rim.or.jp/~kbk/perl-5.8/perlfaq4.html#what_is_the_difference_between__array_1__and__array_1_
0613 ◆.PT9876/4U
垢版 |
2006/11/06(月) 17:44:37ID:???
あちこちから routin をかき集めて自作しました :
alter.s225.xrea.com/cgi/bbs/read.cgi?log=0

1. 評価と言うよりも bug の あぶり出しを希望します.
2. 操作がわかりづらいとの意見があります.
 率直な ご意見をお願いいたします
3. 自信がないのが security 関連

・ 念のため, 全ファイルを upload しておきます:
alter.s225.xrea.com/bbs.zip
0614nobodyさん
垢版 |
2006/11/06(月) 18:17:34ID:???
>>612
URLが長すぎて横スクロールでた。
ふざけんな改行しろこのボンクラっ!
0615nobodyさん
垢版 |
2006/11/07(火) 08:23:24ID:???
IDなんだしもっと短く付けろよなw
文章そのままって酷すぎるw
0616nobodyさん
垢版 |
2006/11/08(水) 01:06:36ID:???
>>613
ちょっとエキサイト翻訳チックだな
0617 ◆.PT9876/4U
垢版 |
2006/11/08(水) 06:15:24ID:???
>>613
お返事ありがと〜.
でも, どういう意味かしら ?

誘導されて来たのに いまだに誰も...
どうなってるの ?
0618nobodyさん
垢版 |
2006/11/08(水) 10:54:37ID:???
>>617
「とても読めたもんじゃない」
ということではないでしょうか。
613は釣りとしか思えない。
CGI以前の問題ね。
0619 ◆.PT9876/4U
垢版 |
2006/11/08(水) 18:47:29ID:???
>>618
>CGI以前の問題ね
確かに... JavaScrit の bug がぁ〜〜〜
(絶対に書き込めない)
おまけに... WaMCom (Mozilla1.31) では問題とならなかった error が
IE5.17(Mac版) では発生して処理が止まる〜〜〜.

>613は釣りとしか思えない
釣りでは ありませぬ.

僕の環境で確認できる bug は退治しました.
引き続き あら探しをお願いいたしまする〜.
0620nobodyさん
垢版 |
2006/11/08(水) 20:37:07ID:???
つっこみどころが多すぎるなぁ…。

まず、「何を作ったのか」という概要や大まかな処理の流れすら書いてない。
>評価と言うよりも bug の あぶり出しを希望します.
評価するスレ。デバッグする所ではない。てか、デバッグなめすぎ。
>操作がわかりづらいとの...
具体的にはどういう操作?
>自信がないのが security 関連
どのファイルの何行目のどういう処理?
>JavaScrit の bug がぁ
JavaScritのスレへどうぞ。
>WaMCom (Mozilla1.31) では問題とならなかった error が
>IE5.17(Mac版) では発生して処理が止まる
と書いていながら
>僕の環境で確認できる bug は退治しました
ってどうよ。

何より、CGIについて無学なのがバレバレです。
背伸びせずPerlからでもきちんとお勉強しましょう。
0621nobodyさん
垢版 |
2006/11/08(水) 20:38:25ID:???
これさぁ、変数の検査とか書き込む条件とかまったくないじゃん。
最低でも変なファイル作られないようにするとか異常にでかい投稿は
書き込まないようにするとかしないと。
叩き専門の人にとっては叩く必要もないほどへなちょこだけど
プログラムに日本語を含めないつくりはいいと思う。
プロでもソースのいたるところに日本語を埋め込む人はいるからね。
ぶっちゃけそれくらいしか褒めようがないんだけどw

nullぽっぽはもしかしてOperaメインなの?
0622nobodyさん
垢版 |
2006/11/08(水) 21:25:25ID:???
>>613
まずはuse strict及びuse warnings、
また-Tオプションを付けてエラーが出なくなってから来てください。
0623nobodyさん
垢版 |
2006/11/09(木) 02:37:09ID:???
nullはクラシックMacのiCab使いだった筈。
0624nobodyさん
垢版 |
2006/11/09(木) 05:11:43ID:Rlngnc6w
まず, 皆さんにお礼を...
ありがとう ごぜ〜ますだ.

>>620
一応, 掲示板 CGI script (のつもり)

>デバッグする所ではない
言葉を間違えたかも ?
debug を他人に依頼するようでは問題外だと思っております.
動作はするけれど server 利用者に迷惑を書けるような
security hole に気づいていないかも知れない.
そんな問題があったら指摘して欲しかったですだ.

>>621
>変数の検査とか書き込む条件とかまったくないじゃん
おおせの通りです.
ようするに書きこみの部分を改良しなければならないのね ?
で, read.cgi の方は どうでしょう ?
人に迷惑を書けるような security hole が あったなら ご指摘くださいませ.

>CGIについて無学なのがバレバレです
弁解の余地もありません.
でも, 半端者の僕が言うのもアレですが
拾って来れるものには満足できなかったのら.
そもそも perl って できの悪い土台に無理な建て増しをした印象が...
0625 ◆.PT9876/4U
垢版 |
2006/11/09(木) 05:37:51ID:???
>>621
>プログラムに日本語を含めないつくりはいいと思う
日本語を書きこむと文字化けするのでwww (僕の環境は一般的でない)
僕なりに いろいろ拾って来て解読を試みました.
その時, "皮肉にも comment が見通しを悪くしている" と思ったの.
徹底的に簡素化するのが先決だと...

> nullぽっぽはもしかしてOperaメインなの?
MacOS9.22 上で まともに動く Opera はなさそうです.
現在は WaMCom(Mozilla1.31+) がメインですだ.
動作確認に iCab, IE も立ち上げることがありますが,
あくまでも参考程度です.

>>622
メモメモ...

>>623
今では動作確認の参考程度ですだ.
改良されたかと思うと別の不具合が発生するのが許せません.
0626 ◆.PT9876/4U
垢版 |
2006/11/09(木) 05:47:23ID:???
ところで rgst.cgi で変なファイルを作れる可能性って ?
(これこそが最も知りたいところ)
量の制限は早急に対処したいと思いますが...
0628nobodyさん
垢版 |
2006/11/09(木) 17:48:40ID:???
>>621
日本語コメントのどこが問題なの?
0629nobodyさん
垢版 |
2006/11/09(木) 19:51:53ID:???
利用者から見えない変数名、関数名を縮める意味があるのかと小一時間。
0630nobodyさん
垢版 |
2006/11/09(木) 22:54:18ID:???
Perlにケチつけるまえに自分の頭の程度を疑えよな
0631nobodyさん
垢版 |
2006/11/09(木) 23:12:35ID:???
日本語のコメントを入れないのが良いって…
なにその英語はカッコイイ、日本語はダサいっていう中学生wwwww

それに、日本人なんだから直感的にわかりやすい日本語で注釈をつけておくのが、
あとを引き続く人へのマナーだと思うんだが。
0633 ◆.PT9876/4U
垢版 |
2006/11/09(木) 23:35:05ID:???
予想していたとはいえ, ボロボロだなぁ.
まあ, 他人様に使ってもらおうとするのなら それなりの配慮が必要だろう.
しかし, 僕は自分のために作ったんだ.
最低限, 同じ server 利用者に迷惑を書けない配慮をすれば済む話なんだ.

僕が知りたかったのはその部分に問題があるかどうか なんだけど,
話は あらぬ方向に...
0634nobodyさん
垢版 |
2006/11/09(木) 23:45:04ID:???
率直に言ってゴミ.基本から勉強し直した方がいい.
というかまずは普通の学校の勉強を頑張った方がいい.
0635nobodyさん
垢版 |
2006/11/09(木) 23:46:24ID:???
ひとつだけヒントを.

> read(STDIN,$u,$ENV{'CONTENT_LENGTH'});

たとえ寝ぼけて他としてもこの一行を書いてしまうようでは CGI 書くのは辞め
た方がいい.
0636nobodyさん
垢版 |
2006/11/10(金) 03:57:46ID:???
プログラムの途中に文字列リテラルを埋め込むな、というなら解らないでもない。
ただ、それは日本語に限った事じゃないな。
0637 ◆.PT9876/4U
垢版 |
2006/11/10(金) 06:34:00ID:???
>>634
んじゃ〜ゴミでない script を書いてくらはい.
あっしは それを使わせていただきますだ. (イヒヒ)

>>635
>この一行を書いてしまうようでは CGI 書くのは辞めた方がいい
して, その理由は ?
それと read.cgi に security hole は ないのかどうかが知りたいのだけどなぁ.

-------------------------------------------------------------------
なんだか僕の質問に きちんと答えた回答はない.
ここを当てにした僕が愚か者ってことですかい ?
0638nobodyさん
垢版 |
2006/11/10(金) 07:10:46ID:???
まだ分かってないみたいだね.

>>この一行を書いてしまうようでは CGI 書くのは辞めた方がいい
>して, その理由は ?
セキュリティホールになるから.理由は自分の頭で考えなさい.

>それと read.cgi に security hole は ないのかどうかが知りたいのだけどなぁ.
当然ある.
0639nobodyさん
垢版 |
2006/11/10(金) 07:14:05ID:???
>>637
よく分かっていないようだからキミがすべきことを具体的に言おう。
スクリプト冒頭の#!/usr/local/bin/perlを、
#!/usr/local/bin/perl -T
use strict;
use warnings;
に書き換えてデバッグしなさい。
0640nobodyさん
垢版 |
2006/11/10(金) 11:09:25ID:???
n u l l は 出 て 行 け
0641nobodyさん
垢版 |
2006/11/10(金) 11:30:01ID:???
>>633>>637でカンマを多用したり、
>>638でドットを使ったり、
キモチワルイ。流行ってるのか?

というかプログラマのくせに
「、」や「。」の代わりに「,」「.」使う奴って
なんだかなぁ…
0642nobodyさん
垢版 |
2006/11/10(金) 11:46:05ID:???
>read(STDIN,$u,$ENV{'CONTENT_LENGTH'});

この一行は書いてもいいよ。その前の行で$ENV{'CONTENT_LENGTH'}の最大値を
決めてチェックしていればね。
0643606
垢版 |
2006/11/10(金) 12:23:56ID:???
>>637
人に物事を頼む態度じゃないよね?
こっちはみんな善意で見てるってこと忘れてる?
嫌なら他行ったら?

最初に自分で書いてたみたいだけど、他人のソースのつぎはぎスクリプトでしょ?
何の価値があるの?
まずはダサくてもきちんと問題なく動く物を作ることからじゃない?


利用者のことを考えないスクリプトなんて糞だと思います。
0644606
垢版 |
2006/11/10(金) 12:26:14ID:???
ちなみにおいらのほうは、鯖が不調で繋がりません。
どうにもならんのでしばらく放置〜

まだ様子見てくれてる人とかいるのだろうか・・・
もし居たら感謝
0645nobodyさん
垢版 |
2006/11/10(金) 14:20:19ID:???
自分がよく理解していない言語で書いたプログラムを
なぜ共用サーバーで使おうと思えるのか、その神経が理解できない。
プログラムよりも、その意識や存在自体が危険。
0646nobodyさん
垢版 |
2006/11/10(金) 16:16:14ID:???
>>637
>なんだか僕の質問に きちんと答えた回答はない
「きちんと答えた回答」があることにさえ気付けてないだけ。
自分の無知を棚に上げておきながら、
コードに目を通してマジレスしてくれた住人に対して
>ここを当てにした僕が愚か者ってことですかい?
とは随分とご挨拶だな。

ま、オレが見た限りでは
お前の掲示板CGIscriptには何のsecurity holeもないよ。
安心して使って良い。オレが保証する。
0648nobodyさん
垢版 |
2006/11/10(金) 19:08:49ID:???
でも実際「大丈夫、何の問題もないよ」としかレスされてなかったら、
ということを◆.PT9876/4Uは考えてみた方が良い。
645も指摘してる通り、今の時点では自分にその言葉が正しいのかどうかすらも
判断できないのに、共用サーバーで自作CGIを使おうとしていることがどれだけ危険か考えてみろ。
極端なことを言えば、それらしい説明があって「これを書き足した方が良い」と言われれば、
それが危険なコードであっても追記してしまうんじゃないのか?

少なくともこれだけマジレスしてくれたり
お世辞にも読みやすいとは言えないようなコードを読んでくれただけでも感謝すべきなのに
「まずこれをやれ」と言われたことはやらず、
自分のレベルの低さを指摘されると反省するどころか逆ギレして
637のような皮肉と煽りに満ちたようなレスしかできないことを恥ずかしいとは思わないのか?
0649 ◆.PT9876/4U
垢版 |
2006/11/10(金) 19:14:39ID:???
うわっ, お祭りになってる〜 (~_~)
(突っ込まれると思った global variable の突っ込みは なぜかないのね)

>>639
なるほろ...
さっそく確かめてみますだ〜.

>>642
おありがとうごぜますだ〜.
0650 ◆.PT9876/4U
垢版 |
2006/11/10(金) 19:29:01ID:???
なんだか怒ってる人が居るみたいだけど,
こういうときは百計逃げるにしかず... (ぴゅ〜)
0653nobodyさん
垢版 |
2006/11/10(金) 20:53:05ID:???
サブルーチンの宣言ってなんじゃらほい?
スクリプトが見れないし何の事を言ってるのかわからんち。

>>641
理系の論文はそういう仕様らしいぞ。
0654nobodyさん
垢版 |
2006/11/10(金) 20:57:05ID:???
情報系の大学院でまともな教育受けた人間なら気持ち悪いとは思わない気がする.
気持ち悪がるのは専門学校程度しか行けなかったやつか基本をろくに知らない文系プログラマじゃね?
0655nobodyさん
垢版 |
2006/11/10(金) 21:14:08ID:???
おかしいな、ここは日本語で話しをする場所じゃなかったのか?
いつから自分の投稿を論文調で発表する場になったんだ?

とりあえず、読みづらい。
読み手を考えないのは、物づくりで使い手を考えないのと同じ。
邪魔
0656nobodyさん
垢版 |
2006/11/10(金) 21:28:17ID:???
あれだ、脳内補完で「,」も「.」も消し去っていた件
0657nobodyさん
垢版 |
2006/11/10(金) 21:39:13ID:???
別にそんなに気にする程のことでもないだろ。
ウザイのは句読点じゃなくてnullの存在なだけなんだし。
0659 ◆.PT9876/4U
垢版 |
2006/11/10(金) 23:42:37ID:???
どうい されて たまるか !
どうでもいいけど...
いや, やめておこう...
...
0660nobodyさん
垢版 |
2006/11/10(金) 23:53:13ID:l2n6SZM/?2BP(121)
sub file_read {
my $a = $_[0];
open( FH , $a );
while (<FH>) {
print;
}
close FH;
}
こんなサブルーチンを作ったのですがうまく動きません
なぜですか?
0662nobodyさん
垢版 |
2006/11/15(水) 22:13:43ID:???
>>660
スレ違いにも程がある。これはまぎれもなく板違いでもない!
ドメイン違いの質問だ。よそのドメインいけ
0663nobodyさん
垢版 |
2006/12/04(月) 16:34:03ID:???
さすがに句読点でいちゃもんをつけるのはどうかと思う。
0664nobodyさん
垢版 |
2010/02/26(金) 22:46:54ID:1vcgNIKQ
ping
0665○~
垢版 |
2010/02/26(金) 23:15:50ID:1vcgNIKQ
性懲りもなく, 評価依頼:
 ttp://homepage2.nifty.com/alter/

・ 以前指摘された部分には一応, 対策を施したつもりっす.
・ CGI は perl script で, HTML の代わりに外部 js ファイルを吐き出す仕様.
 (Ajax と違って, web-browser の影響が なく, 文字コードの問題も回避できる)
・ script 内の HTML 記述が皆無なので見通しが良く, 動作も軽快.

ただ, 注意して作ったつもりですが,
見落とした bug が潜んでいる可能性が大きいっす.
0666 忍法帖【Lv=6,xxxP】
垢版 |
2011/10/14(金) 19:38:24.52ID:5RDtymiP
そして誰にも相手にされず>>665は1年が経ったのであった
                     糸冬わり
0667 忍法帖【Lv=40,xxxPT】(1+0:8) 【24.4m】 電脳プリオン ◆3YKmpu7JR7Ic
垢版 |
2012/09/30(日) 15:48:22.27ID:????PLT(12079)

          | | ガガガッ
          | |
          人
  ∧_∧   <  >_∧∩
  ( ・∀・)   人`Д´)/ ←>>203
 と    )  <  >_∧∩
   Y /ノ    .人`Д´)/ ←>>259
    / )    <  >_∧∩
  _/し' //. V`Д´)/ ←>>433
 (_フ彡        /
0668カタヤマ
垢版 |
2013/12/31(火) 01:08:42.56ID:NACGwKVa
宇土成

うまく逃げたな
0669nobodyさん
垢版 |
2017/12/30(土) 13:06:44.88ID:YhlYw6jg
誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。

グーグル検索⇒『半藤のブブイウイウレレ』

8CQR9BVF30
0670nobodyさん
垢版 |
2018/02/20(火) 04:34:47.26ID:???
☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の
両院で、改憲議員が3分の2を超えております。
『憲法改正国民投票法』、でググってみてください。国会の発議は
すでに可能です。平和は勝ち取るものです。お願い致します。☆☆
0671nobodyさん
垢版 |
2018/06/20(水) 23:23:44.85ID:UnZq46Ab
プログラミングを誰でも習得できる方法は、「前場アキドルのプログラミングマスター方法」というブログで見られるらしいよ。ネットで調べると見られるらしいです。

OT97Q
0672nobodyさん
垢版 |
2023/09/24(日) 04:27:28.28ID:???
ハイテンションプリーズ!
レスを投稿する


ニューススポーツなんでも実況