CGIとかPerlとか超初心者なんだけど、
■ このスレッドは過去ログ倉庫に格納されています
0001埼玉板"管理人"
2001/07/20(金) 17:36ID:???が非常に高くなってきたのです。
http://green.jbbs.net/travel/511/saitama.html
ス連でも相談にのってもらってるんだけど、ここでも相談したい。
とりあえずFTPって何?どういうふうに使うの?
004934
2001/08/20(月) 06:26ID:wFbgUu3Mこれから一歩一歩進んでいきまーっす
またお願いするかも、その時ばかにしても
いいからまた教えてね。
005034
2001/08/20(月) 06:28ID:wFbgUu3M一時書き込み不能でした、今度から初心者コーナーに
活きます!
0051名無しさん@お腹いっぱい。
2001/08/20(月) 13:26ID:YMvOwFSsどーしてそこまでしてメモ帳を使うかってことだけど、おれはdatファイルが作れなかっただけです。なので、ダブルクオーテーションをつけるっていうのは、非常に助かった。ありがとう。
ちなみに、個人的にはパールエディターと秀丸を使ってる。秀丸はかね払う気ないから、基本はパールエディターになるかな。メモ帳でもいいけど、メモ帳の場合、ちょっと長いスクリプトとかになると開けないし、文字列がおかしくなったりするので。
アクティブパールは入れたいんだけどね。めんどいから、サーバーにアップして使う方でいい。メモリ不足だし。
0052名無しさん@お腹いっぱい。
2001/08/20(月) 20:38ID:???サーバーをテストに使うなよ。
0053名無しさん@お腹いっぱい。
2001/08/20(月) 21:54ID:YMvOwFSsだって、ローカルでテストできないし。
0054名無しさん@お腹いっぱい。
2001/08/20(月) 21:56ID:???いやネタなんだろうけどさ(w
0055名無しさん@お腹いっぱい。
2001/08/20(月) 22:25ID:YMvOwFSs0056名無しさん@お腹いっぱい。
2001/08/20(月) 22:29ID:???0057名無しさん@お腹いっぱい。
2001/08/20(月) 22:35ID:???奴にはCGI使う資格なし。
0058名無しさん@お腹いっぱい。
2001/08/20(月) 23:13ID:juMezMO60059名無しさん@お腹いっぱい。
2001/08/20(月) 23:21ID:???0060名無しさん@お腹いっぱい。
2001/08/20(月) 23:23ID:juMezMO6touchもファイル名に入ってますけど大丈夫なんですか?
0061名無しさん@お腹いっぱい。
2001/08/20(月) 23:26ID:???006236
2001/08/20(月) 23:33ID:???きっと 58 はwindows上の話なんだろ。
>>58
windows上を仮定して。
まともなeditorなら.htaccessという名前でファイルを保存できるよ。
できなきゃ、a.htaccess というファイルを作ってサーバーに転送したあと
FTPソフトでファイル名を変更したら?
#DOS窓で dir > .htaccess としてもいいよ。
>>60
touch は平たく言うと、unixで任意のファイルを作るコマンドです。
#あくまで、ひらたくいうと。
0063名無しさん@お腹いっぱい。
2001/08/20(月) 23:35ID:juMezMO6すみません。意味がわかりません。
DOSプロンプトに打ちこむってことですか?
ほんとすみません。
0064名無しさん@お腹いっぱい。
2001/08/20(月) 23:36ID:???YES!
0065名無しさん@お腹いっぱい。
2001/08/20(月) 23:37ID:juMezMO6助かりました。
xyzzyというエディタを使って出来ました。
ありがとうございました。
0066名無しさん@お腹いっぱい。
2001/08/20(月) 23:50ID:YMvOwFSs文句ならおれじゃなくてパソコンに言ってくれよ
それか、アクティブパールに言ってくれよ
006736
2001/08/21(火) 00:05ID:???というか、その事象がよく分からないんだよなあ。
「メモリが足りない」ってのは、どうやって分かったの?
どんな作業をしていたら、そう思ったの?
0068名無しさん@お腹いっぱい。
2001/08/21(火) 00:36ID:YG7vhsTEアクティブパールを入れて、ローカルで起動したのはいいが、終了しても他のプログラムが開けない。
アクティブパールを消したら直った。
でも、やっぱローカルで試さないといけないんなら、ちょっと頑張ってみるつもり。Perlは覚えたいし、Perlで掲示板とか作ってみたいんで。
頑張ってみます・・。(´ヘ`;) 本も買いなおし・・・。
006936
2001/08/21(火) 00:54ID:???インストールはできて、ActivePerlでスクリプト実行まではできたわけ
ですね。で、スクリプトの実行を終了させた*のに、他の
プログラムの起動時に「メモリが足りないぞゴルァ」表示がでたと。
動かしたスクリプトが無限ループになってたりして、メモリバカ食い+
実はperlが終了してなかったに1票。
そういうときはctrl-alt-delで perlを強制終了させましょう。
0070名無しさん@お腹いっぱい。
2001/08/21(火) 01:04ID:???とりあえず、この前買った2800円の本で理解できなかったので、2350円の相当わかりやすい本を買いなおして、それでPerlを覚えて、『CGIくらい書けますがなにか?』っていうレベルに達してから、アクティブパールを入れてみる。
サブルーチンを書くだけなら、.plになるから、DOSプロンプトで開けたような気がする。
頑張ってみます。
0071名無しさん@お腹いっぱい。
2001/08/23(木) 03:26ID:???漏れも1票!
こんな人と一緒にサーバ共有してるかと思うと、ISPに文句いうのも自重したくなるYo!
0072籠屋
2001/08/24(金) 16:12ID:???部屋3 ケン 国士舘大学
部屋6 まさ 芝浦工業大学
ケンは女性待機用 部屋12にも入室中
0073籠屋
2001/08/24(金) 16:13ID:???0074age
02/01/15 21:28ID:???0075名無しさん@お腹いっぱい。
02/01/15 21:47ID:???感謝sagesage
0076名無しさん@お腹いっぱい。
02/01/15 21:47ID:???しかもあげんなや藁
0077名無しさん@お腹いっぱい。
02/01/16 09:37ID:MSD/CC3Aサーバーにmod_gzipが組み込まれている場合は
勝手にgzipで圧縮してサーバーはデーターを送り出しているの?
例えばCGIで
if($ENV{'HTTP_ACCEPT_ENCODING'}=~/gzip/ ){
print "Content-type: text/html\n";
print "Content-encoding: gzip\n\n";
open(STDOUT,"| /bin/gzip -1 -c");
}
なんて事をわざわざ書かなくても圧縮してくれるんでしょうか?
CGIで圧縮する為の記述は必要はありません。
勝手に Accept-Encoding に gzip が入ってるクライアントに
対しては圧縮して転送してくれます。
0079名無しさん@お腹いっぱい。
02/01/30 19:08ID:???0080名無しさん@お腹いっぱい。
02/02/14 05:47ID:cr2d+HxX文法は間違ってないはずなのですが、考えられる原因がいまいちわかりません。
ちなみに削除の部分はこんな感じです。
sub kill_action {
if ($in{'number'} eq "") { &error("記事Noを入力してください"); }
elsif ($in{'number'} =~ /\D/) { &error("記事Noは半角数字で入力してください"); }
elsif ($in{'pass'} eq "") { &error("PASSを入力してください"); }
&lock1;
&menber_read("lock2");
0081名無しさん@お腹いっぱい。
02/02/14 05:49ID:cr2d+HxX$crypted = crypt($in{'pass'}, "ht");
#--削除対象データが見つかるまでループ--#
$flag1 = 0;
$flag2 = 0;
foreach $line (@DATA) {
($no,$name,$mail,$sex,$hoop,$age,$prefecture,$street,$object,$beginyear,$beginmonth,$beginday,$beginhour,$endyear,$endmonth,$endday,$endhour,$ninzu,$shikou,$comment,$date,$H_A,$id,$m_pass) = split(/\,/, $line);
if ($in{'number'} eq "$no") {
$flag1 = 1;
chomp $m_pass;
if ($crypted eq "$m_pass" || $in{'pass'} eq "$master_key") {
$flag2 = 1;
$line =~ s/.*\n//;
last;
} else { &lock2; &error("PASSが一致しません"); }
}
}
#--削除対象Noが見つからなかった場合のエラー処理ー--#
unless ($flag1) { &lock2; &error("記事No$in{'number'}が見つかりません"); }
if ($flag2) {
if (!open(OUT,">$menberfile")) {
&lock2;
&error("$menberfile ファイルオープンエラー");
}
print OUT @DATA;
close(OUT);
&lock2;
008280=81=82
02/02/14 05:52ID:cr2d+HxX本当に困ってます。どうか宜しくお願いします。
0083名無しさん@お腹いっぱい。
02/02/14 07:02ID:k99DNybkPERLで書いたFTP経由のプログラムはサーバ上許されているでしょうか、
サブルーチンで、掲示板にFTPプロトコルを使ったPERLを加えることは
許されていましたっけ・・・宜しくお願い致します。
0084名無しさん@お腹いっぱい。
02/02/14 07:14ID:???意味不明すぎ。
0085名無しさん@お腹いっぱい。
02/02/14 07:38ID:k99DNybkここにあるサイトの掲示板で、
サブルーチン処理をして掲示板に昨日を加えたいのですが、
訪問者に対してFTPでアクセスする様なスクリプトを機能させる事は
出来るでしょうか? という事です・・PERLでかかれているスクリプトです。
エラーになってしまうので・・・。
レス感謝します。
0086名無しさん@お腹いっぱい。
02/02/14 08:02ID:???それで500は出ないと思う。
Content-Type吐かずに終了しちゃってるとか、ブラケットが
抜けちゃってるとかじゃないの?
ソース上げれば詳しい人が答えてくれるかも。
>>85
良く分かんないけど、bigさんに聞いた方が良いと思いますよ。
008780=81=82
02/02/14 12:42ID:MlVt+YMFありがとうございます。
Content-Typeもブラケットも確認したんですが、これといって異常は見つかりませんでした。
削除処理に入ってからの500エラーなので変数なんかの単純な間違いなのかも知れません。
もう一度よく見直してみてソースをUPしてみます。
008880=81=82
02/02/15 01:53ID:???一応、フォームデコードをUPしてみますが、なにか間違いなんかありますでしょうか?
是非宜しくお願いします。
sub form_decord {
if ($ENV{'REQUEST_METHOD'} eq "POST") {
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
} else { $buffer = $ENV{'QUERY_STRING'}; }
#--フォームデータを分解--#
@parameters = split(/&/,$buffer);
foreach $element (@parameters) {
($parameter, $value) = split(/=/, $element);
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
# SJISコード変換
&jcode'convert(*value,'sjis');
#--正規表現--#
$value =~ s/,/./g;
008980=81=82
02/02/15 01:53ID:???if ($parameter eq 'delno') { push(@DEL, $value); }
#--希望商品データを変数に追加(スペース区切り)--#
if (index($parameter, 'hoop') == 0) { $hoop .= "$value ";}
$in{$parameter} = $value;
}
$page = $in{'page'};
#--ローカルタイムを取得--#
($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time);
$year += 1900;
$month = $mon+1;
@dayname = ('日','月','火','水','木','金','土');
$date = "$year年$month月$mday日(@dayname[$wday])";
$time = sprintf("%02d:%02d:%02d",$hour,$min,$sec);
$date00 = sprintf( "%d%02d%02d", $year, $month, $mday); # yyyymmddの形での日期
}
0090賛成の反対の反対ナノだ!
02/02/15 04:19ID:???> &jcode'convert(*value,'sjis');
>
require 'jcode.pl'; していないんジャ?
0091賛成の反対の反対ナノだ!
02/02/15 05:29ID:???&lock1 および &lock2 のコードを見てみたいナー。
0092名無しさん@お腹いっぱい。
02/02/15 05:41ID:???KCatch.pm とか使おうよ。
my宣言使ってなさそうだから no strict; を宣言してくださいな。
009380=81=82
02/02/15 11:04ID:???ありがとうございます!
>>90一応最初に
## 文字コード変換ライブラリまでのパス
require './jcode.pl';
と設定しています。
>>92
KCatch.pmって文法をチェックするやつですか?
今こういう奴をDLして使ってるんですが、もしより便利だったらDLしなおそうと思います。
でも違いがよくわからないので、アドバイスいただけたら助かります。
http://www.kent-web.com/support/faq/faq1.html#9
009480=81=82
02/02/15 11:09ID:???>&lock1 および &lock2
これのことでしょうか?
sub menberlock1 {
if ($lockkey) {
local($lock_flag) = 0;
foreach (1 .. 5) {
if (-e $menberlockfile) { sleep(1); }
else {
open(LOCK, ">$menberlockfile");
close(LOCK);
$lock_flag = 1;
last;
}
}
if ($lock_flag == 0) {
&error("アクセスが集中しています");
}
}
}
sub menberlock2 { if (-e $menberlockfile) { unlink $menberlockfile; } }
>>90>>91>>92 さん。
本当に感謝です。涙
0096賛成の反対の反対ナノだ!
02/02/15 11:18ID:???行なわれていますので、当然、このCGIが置いてあるディレクトリのパーミッションは
(恐らくnobodyさんに対して)書きこみ権限が必要で、CGIを実行するので
読みこみと実行権限も必要になります。
したがって、777 であるはずですが、OKですか?
009780=81=82
02/02/15 11:24ID:???できました!!
原因はおっしゃるとおり、lockの部分でした。
単純にlock名をまちがえてました・・・
ありがとうございました!!
本当にうれしいです!!
009880=81=82
02/02/15 11:30ID:???ありがとうございます!!
menberlock1とすべきところをlock1としていたみたいです。
やはりいつものミスが出てしまいました。
本当にありがとうございました。深く感謝します。
0099正直100ほしぃ
02/06/03 23:51ID:???,.-'゙''''',='";;;;;;;;",-,,;;;;;;゙;;;;;;;;;l;;;;`,、
/ `ー-...,;;;;;;;;;;;;,-‐/;;;;;;';;;;;;;;;;;;
./ `''''''""i;;;;;;;;ヽ
l ■ |,,,____/ |;;;;
| |.:::::/ ■ ノ;;;;
ヽ、 |:::/ _,/;;;'゛
`ヽ、_ |/ _,,.,;‐';;;;゛゛
"'''=ー;‐---‐‐'';';"-''"゛
0100nobodyさん
02/06/17 22:45ID:hfzhGpXs$data に書き込まれたURL(バラバラ)を
表示する際に正規表現をつかって
決められたURLに置き換えようと挑戦しています
$data =~ s/abc/def/sg;
これで abcがdefに置き換わるとききやってみて
置き換え成功しましたが、
やろうとしている事が
URLで毎回違うのが書き込まれるため、
ワイルドカードみたいなものがいるとおもいました
<a href="http://****色んなURL****"> を
<a href="http://www.yahoo.co.jp" target="_blank">
に置き換えるためには、どういった正規表現が必要なのでしょうか
教えて頂ければ幸いです。
ちょっと日本語の文法めちゃくちゃですね、、
0101nobody
02/06/18 02:00ID:7dVxfF7aここは抑えておくべきダロ
0102nobodyさん
02/06/18 15:20ID:qlpI+yB7有り難う^^ そこみて可能になりました
$data =~ s/href="[-_.!~*'()a-zA-Z0-9;\/?:@&=+$,%#]+/href="www.yahoo***/sg;
これでいけました有り難うございました
0103nobodyさん
02/06/18 17:15ID:???パーミッションを777で使うとどう危険なんですか?
また、特定のディレクトリ内に新規ファイルを作成・更新していく
場合は777じゃなくてもできるのでしょうか。
0104nobody
02/06/18 20:41ID:aBkTtCEX聞くより自分で調べろヨ・・
ttp://www.google.co.jp/search?hl=ja&ie=utf8&oe=utf8&q=permission+777&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja
0105nobodyさん
02/06/18 22:39ID:???http://pc.2ch.net/test/read.cgi/php/1019487717/31
0107nobodyさん
02/06/20 23:22ID:???全く分かりません。Parlのパス程度しか弄ってないし、
その他の設定も説明通りにやってるし。
何か分かりませんか?
0108nobodyさん
02/06/20 23:53ID:???0109nobodyさん
02/06/21 01:18ID:???出っ放しなんですよ。おかしい箇所はないと思うしパーミッションも正しいのですが・・・
0110nobody
02/06/22 01:27ID:???そのWebFormの初期設定でも見直しなさい
0112nobodyさん
02/06/29 08:47ID:???0114nobodyさん
02/09/14 21:11ID:???ソース全面的に見直しているのですが、わかんないところがあるので教えて下さい。
・ハッシュと配列の差
・変数名の長さ
前者は消費メモリ量を見てもあまり差が出てこないので(ActivePerl使用)、
実装は整数をキーとしたハッシュなんじゃないかなと思っているのですが、
抜けの多い、範囲のでかいデータ量の少ないテーブルをハッシュに読み込むところを
配列に読み込んでも良いのか決めかねてます。
後者ですがそのまんまです、短い方が良いのでしょうか。
現在変数名に15〜20文字くらい平気で使っているのですが、
短くすればそれなりの効果は出てきますか。
やっぱり誤差程度でしょうか。
0115nobodyさん
02/09/14 23:28ID:???データ量大→ポインタ(リファレンス)
不要な変数(特にグローバル)→削れ
変数名(名前空間)→そりゃ短い方がそれなりに…
ファイル読出し→適した方法で
後は、myとか関数レベルのものもあるけど
基本的に、一般配布されるようなモノは不要なコメント及び変数が多い
どうでもいいが、Perlでやってる以上、どうしようもないかと
0116nobodyさん
02/09/15 10:19ID:???perlのパスていううのはわかるんですが、
#! て何?
usr て何?
bin て何?
0117nobodyさん
02/09/15 13:56ID:kYEyD4Vxeucに変換するコードがうまく働きません。
perldoc Jcodeの説明を参考にして、次のようなコードを
作りました
#$sjkeyは、base64に変換されたshift-jis(?)文字列
$jcode = Jcode->new($sjkey);
$jcode->mime_decode;
$euc = $jcode->euc;
これで、$eucには、eucに変換された文字列が入るはず
なのですが、実際には次のようなbase64のままの文字
しか$eucには入りません。
%uFF95%uFFFA%uFF91%uFF97
base64をデコードして、それをeucに変換する、のは
cgiの基本の基本のはずなのですが、分かりやすい書籍
などでも、分かりやすく説明したものが見つかりません。
ご指導いただけると、助かります。
0118nobodyさん
02/09/15 14:20ID:???その文字列は、 MIME-Header documented in RFC1522 に準拠しているのか?
そしてそれは本当にBase64でエンコードされているのか?
単純にBase64でエンコード、デコードするなら、MIME::Base64使うよ。
0119nobodyさん
02/09/15 14:36ID:???0120nobodyさん
02/09/15 14:50ID:???0121nobodyさん
02/09/15 16:05ID:kYEyD4Vxもう少し、状況を詳しくご説明いたします。
MacOSX用Internet Explorer5.2で「放送」という文字列を
JavaScriptの変数wordに代入して、escapeします。:
(1) word = escape(word);
それをcookieに保存して:
(2) document.cookie = word=' + word + '; path=/;';
そのcookieをperl/cgiから読ませます:
(3) @key_value = split(/;s/, $ENV{'HTTP_COOKIE'});
(1,2,3)により、「方法」が
(4) %uFF95%uFFFA%uFF91%uFF97
となってしまいます。この(4)をeucの「放送」に戻す方法
を探していました。
ある方から、(4)がUnicodeに対応しているようなので、
(5) $s1 =~ s/%uFF([A-F0-9]{2})/pack 'H*', $1/eg;
を使え、というご指導を受けました。「放送」を含む多くの文字が、
(5)のコードで、正しく処理できました。しかし、「資本」という文字
は、(1,2,3)の処理をすると、(6)に変換され、
(6) %uFF8E%uFF91%uFF96%7B
(5)の方法で(6)を変換すると、最後の%7Bが変換されずに、(7)のように
なります。
(7) 資%7B
よろしくご指導をお願いいたします。
0122あぼーん
NGNG0123nobodyさん
02/09/16 00:56ID:???$s1 =~ s/%uFF([A-F0-9]{2})/pack 'H*', $1/eg;
$s1 =~ s/%([A-F0-9]{2})/pack 'C', hex $1/eg;
0124nobodyさん
02/09/16 11:06ID:Ah3SHnxoありがとうございます。教えていただいた方法で、
「放送」も「資本」も正しくperl/cgi+JavaScript
で処理できました。これでほとんどの文字が正しく
処理できるようになりました。
しかし、極少数の文字は、正しく処理できません。
例えば、「頒布」をMacOSX用IE5.2のJavascriptで
escapeしてcookieで保存したものを、perl5.8のコー
ドでそのcookieを読ませると、「頒布」という文字が:
(1) %uFF94%u0415z
となり、教えてただいた方法では、元の「頒布」に戻せ
ませんでした。
教えていただいた方法で、大多数の文字は処理できるので、
(1)は深刻な問題ではありませんが、もしも解決する方法が
あれば、ご指導下さい。
0126nobodyさん
02/09/16 23:48ID:Ah3SHnxoありがとうございます。探していた情報は、まさにご指摘頂いた
サイトにありました。
$sに代入された値を*sでサブルーチンに渡す、というこれまで
使ったことのないコードのためが、UTF-16のデコードには、
まだ成功しておりません。
&simaguni'decode8(*s,'euc');
perl -wの"-w"やuse strictも外さないと、この関数は
エラーが出るようです。
0127nobodyさん
02/09/17 00:24ID:yAKo74Faapacheサーバーでperl/cgiを使っています。perl/cgi
だとユーザーからのリクエストを受けてから、
(1) perlが起動され、
(2) cgiスクリプトがコンパイルされ、
(3) コンパイルされたスクリプトが実行される
という作業が行われるために、mod_perlに比べて、「遅い」
という話を聞きます。
しかし、アクセス数の少ない私のサイトで自作したperl/cgiを
使っていると、「早い」と感じます。どう考えても、毎回、
(1,2,3)のプロセスが実行されているとは考えられません。
1度実行されたperl/cgiスクリプトはコンパイルされた状態で
キャッシュかなにかに保存されるために、2回目以降は、(1,2,3)
のプロセスの一部が省略されているのでしょうか?
それとも、perlという言語は、(1,2,3)の作業が異常に早いので
しょうか?(Javaでは、短いコードをコンパイルするのにも、
結構、待たされるので、なぜperlだと待ち時間がないのか不思議
です。)
0129nobodyさん
02/09/17 14:26ID:???○サーバ
0130nobodyさん
02/09/17 20:46ID:AMfRDk5e> $s1 =~ s/%uFF([A-F0-9]{2})/pack 'H*', $1/eg;
> $s1 =~ s/%([A-F0-9]{2})/pack 'C', hex $1/eg;
皆様のおかげで,%xx形式のデータを日本語文字に
変換することができ,本当に感謝しております。
実はもう1つお願いがございます。
「放送」という文字列を,%95%FA%91%97という
符号に変換する方法を教えていただけないでしょうか。
(Jcodeを使って自分でやろうとしたのですが,どうして
もうまくいきません。もし可能であれば,Jcodeを使わ
ない:
$s1 =~ s/xxx/yyy/zzz;
とう方法を教えていただけると自分でも使えるので,
助かります。
0131nobodyさん
02/09/17 20:52ID:???0133nobodyさん
02/09/17 22:14ID:yAKo74Fa教えていただいた:
(1) $s =~ s/xxx/yyy/zz;
の方法で日本語のデコードもエンコードもうまく行きました。
本当にありがとうございました。
0134nobodyさん
02/09/17 22:33ID:yAKo74Fa> use URI::Escape;
上の文字列でGoogleを検索して、%xx形式が、"strings as
defined by RFC 2396"というように呼ばれているのが
分かりました。ありがとうございます。
Jcodeにあるencode(), decode()で処理できると誤解して
おりました。use URI::Escapeという別のモジュールを
使うわけですね。
日本語処理は、難しいですね?
0135nobodyさん
02/09/17 22:59ID:???0136nobodyさん
02/09/17 23:05ID:???ファイル読み込みだけのときもlockしたほうが良いもんですかい?
open(IN,"hoge")
flock(IN, 2);
@hoge = <IN>;
close(IN);
0138nobodyさん
02/09/18 00:44ID:???0140nobodyさん
02/09/18 04:55ID:83u7sqxbいいえ、別に難しいとは思いませn
ただ、一人勝ちの英語に比べるとずいぶん損してるなぁとは思う
英語圏の奴らは内容にどっぶり浸かれるもんな
0141あぼーん
NGNG0142バカ
02/09/19 14:36ID:5bUuU7rG#!/usr/local/bin/perl
print "Content-type: text/html\n\n";
print "<html>\n";
print "<head><title>test</title></head>\n";
print "<body>\n";
$n = int(rand(3));
print "<img src=./$n.jpg><BR>\n";
print "</body>\n";
print "</html>\n";
このまま2ch運営さんにリンクしてもらってもダメですよね。2.jpgとかを、そのまま送りだすにはどうしたらよいでしょうか?
「おまえの頭じゃcgiは無理だ」は無しの方向で。
0143nobodyさん
02/09/19 14:46ID:???$n = int(rand(3));
print <<"EOF"
Location: ./$n.jpg
EOF
exit;
__END__
0144バカ
02/09/19 14:51ID:5bUuU7rGこれから解読にとりかかって、わからなかったら股きます(*´∀`)ノバイチャ
0147nobodyさん
02/09/19 15:41ID:???0148nobodyさん
02/09/19 16:19ID:???Locationは相対パスじゃ飛べないブラウザあるぞ。
Locationの前にcontent-type出さないとエラー出すブラウザもあるぞ。
0149nobodyさん
02/09/19 16:28ID:???■ このスレッドは過去ログ倉庫に格納されています