トップページ⇒php
995コメント334KB

CGIとかPerlとか超初心者なんだけど、

■ このスレッドは過去ログ倉庫に格納されています
0001埼玉板"管理人"2001/07/20(金) 17:36ID:???
てか何もわかってない厨房なんだけど、掲示板を自鯖へ移転する必要性
が非常に高くなってきたのです。
http://green.jbbs.net/travel/511/saitama.html

ス連でも相談にのってもらってるんだけど、ここでも相談したい。
とりあえずFTPって何?どういうふうに使うの?
0133nobodyさん02/09/17 22:14ID:yAKo74Fa
>131
教えていただいた:
(1) $s =~ s/xxx/yyy/zz;
の方法で日本語のデコードもエンコードもうまく行きました。
本当にありがとうございました。
0134nobodyさん02/09/17 22:33ID:yAKo74Fa
>>132
> 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:???
聞いているんですかね?
0137 02/09/17 23:07ID:???
flockを使ってるんですけど
ファイル読み込みだけのときもlockしたほうが良いもんですかい?
open(IN,"hoge")
flock(IN, 2);
@hoge = <IN>;
close(IN);
0138nobodyさん02/09/18 00:44ID:???
読むだけならいいんじゃないの?
0139 ◆AOHU.zVE 02/09/18 01:59ID:???
読み込みは共有ロック
書き込みは排他ロック
した方がいいんでは?
0140nobodyさん02/09/18 04:55ID:83u7sqxb
>>134
いいえ、別に難しいとは思いませn
ただ、一人勝ちの英語に比べるとずいぶん損してるなぁとは思う
英語圏の奴らは内容にどっぶり浸かれるもんな

0141あぼーんNGNG
あぼーん
0142バカ02/09/19 14:36ID:5bUuU7rG
バカニュース板の看板を半角2D板のようにローテーションさせたいと思い、自力でここまでは作りました。

#!/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:???
#!/usr/local/bin/perl
$n = int(rand(3));
print <<"EOF"
Location: ./$n.jpg

EOF
exit;
__END__
0144バカ02/09/19 14:51ID:5bUuU7rG
サパーリ意味がわかりませんが、とにかくありがとう!!!
これから解読にとりかかって、わからなかったら股きます(*´∀`)ノバイチャ
0145_02/09/19 15:24ID:???
>>143
( ´,_ゝ`) プッ
0146_02/09/19 15:27ID:???
>>145
(゚д゚ )ハァ?
0147nobodyさん02/09/19 15:41ID:???
( ´,_ゝ`)
0148nobodyさん02/09/19 16:19ID:???
>>143
Locationは相対パスじゃ飛べないブラウザあるぞ。
Locationの前にcontent-type出さないとエラー出すブラウザもあるぞ。
0149nobodyさん02/09/19 16:28ID:???
(゚Д゚)シラネーヨ
0150nobodyさん02/09/19 16:41ID:???
Content-Typeは妙だね
0151nobodyさん02/09/19 20:44ID:???
>>143
そんな糞ソース晒すからレベル低いって言われるだろ!
0152nobodyさん02/09/19 20:56ID:???
お決まりの言っとくか。

>>151
じゃ、お前が書いてみろ。
0153 ◆AOHU.zVE 02/09/19 21:56ID:???
>>151
どゆのがレベル高いんでしょ?

>>142
画像は0.jpg〜2.jpgでいいのかな?
#!perl
print "content-type: image/jpeg\n\n";
open(IN,int(rand(3)).'.jpg');
print <IN>;
close(IN);
こんなんつくって、<img src="">で呼び出してあげるんじゃ
だめ???

0154nobodyさん02/09/19 22:00ID:???
>>153
( ´,_ゝ`) プッ またやっちまったな
0155nobodyさん02/09/19 22:34ID:???
>>153
糞過ぎ(;´Д`)
0156 ◆AOHU.zVE 02/09/19 22:36ID:???
>>154
143じゃないですよ?
なんか違う意味でまたなのかな???
0157nobodyさん02/09/19 22:49ID:???
>>145-147, >>149, >>151, >>154, >>155
これらの発言は、Perlを憎む某によって書き込まれています
気にしないで下さい

プログラム板のRubyスレとPerlスレ見れば分かる
例えば:http://pc3.2ch.net/test/read.cgi/tech/1028906179/206-
0158 ◆AOHU.zVE 02/09/19 23:53ID:???
( ´,_ゝ`) プッ
#!perl
use Inline Ruby;
main();
1;
__END__
__Ruby__
def main
print "content-type: image/jpeg\n\n"
file = open( "#{rand(3)}.jpg" )
print file.read()
file.close()
end
0159nobodyさん02/09/19 23:58ID:???
Dream ★あげ
0160nobodyさん02/09/20 00:03ID:???
>>158
それって、Windows環境で動くのか?
0161 ◆AOHU.zVE 02/09/20 00:11ID:???
>>160
Inlineはppmで逝けるけど
Inline::Rubyがないので、気合いれてコンパイルすれば...
http://search.cpan.org/author/NEILW/Inline-Ruby-0.02/lib/Inline/Ruby.pod
0162nobodyさん02/09/20 00:23ID:???
>>161
へー、ルビーってテキストモードとかないということかぁ。。。
0163nobodyさん02/09/20 00:45ID:???
>>143
>>153
>>158

どれが一番ましよ?
0164nobodyさん02/09/20 00:52ID:???
>>163
>>143はどう見ても動かないだろ。だってヒアドキュメントがまともに書けてないもん。
0165 ◆AOHU.zVE 02/09/20 01:45ID:???
だれがperl派でだれがRuby派かわからんのだけど...

>>161
Rubyよくわからんけど、Inline::RubyはXSモジュールなんで
コンパイルが必要。Rubyのソースも必要みたい。

>>163
>>143はエラー>>158はネタなので>>153で
0166nobodyさん02/09/20 02:46ID:???
>>165
それだっ!
0167nobodyさん02/09/20 08:30ID:OP5C6/Ba
$うんこ
(・∀・)イイ
0168nobodyさん02/09/20 16:22ID:ctJiuFnG
質問です。CGIを自分のパソコン上で動かしたいのですが、以下のような文章が出ます。
ちなみに、普通のhtmlページは表示されます。

ページを表示できません
検索中のページには問題があるため表示できません。

--------------------------------------------------------------------------------

次のことを試してください:

localhost ホーム ページを開いてから、表示する情報へのリンクを探してください。
[更新] ボタンをクリックするか、後でやり直してください。

[検索] ボタンをクリックして、インターネット上の情報を検索してください。
関連したサイトの一覧 も表示できます。




HTTP 500 - 内部サーバー エラー
Internet Explorer
0169nobodyさん02/09/20 16:31ID:eZg18XK5
>>168, >>169
それはあなたのCGIが正常に機能していないためと思われます。
Perlでしたら、そのプログラムをコマンドラインで動かしてみれば
よろしい。コマンドラインがやなら、copalというプログラムを
インストールしてやってみるとよい。エラーメッセージが出る
はずです。それに従ってCGI(Perl)ファイルを修正してやり直し
すればよい。
0170 ◆AOHU.zVE 02/09/20 16:38ID:???
>>168
500 Internal Server Error
なので、プログラムがおかしいのでは・・・
せめてデーモンなにつかってて言語は何つかててとか
書けない?

0171 ◆AOHU.zVE 02/09/20 16:54ID:???
2chビギナーなので、よくわからんけど
【Perl】初心者コーナースレ
http://pc.2ch.net/test/read.cgi/php/1032070299/l50
の方が正統なスレだと思うんだけど、移動しなくてよいの?

0172nobodyさん02/09/20 17:06ID:???
>>171
確かに、このスレのスレタイは、よくないな。
移動するか
0173nobodyさん02/09/20 17:20ID:???
>>171, >>172
いいじゃん、需要結構あるんだからさ。
1000まで行って考えようYo
0174 ◆AOHU.zVE 02/09/20 18:09ID:???
>>173
じゃぁこのままで^^;
0175nobodyさん02/10/01 07:57ID:ax7rnh/7
perlスクリプトはperlccというプログラムで実行ファイルになるようですけど、
CGIで使う場合、perlccで実行ファイルにしておいた方が速いのでしょうか。
man perlccすると実験的な段階なので動作を保証しないといったことが書か
れてありますので、正常動作が確認された場合に限ってお聞きします。
0176nobodyさん02/10/01 08:18ID:???
>>175
print "Hello World";
をperlccでstaticにコンパイルしたら800KB以上になったのでやめたことがあります。
0177nobodyさん02/10/01 09:03ID:???
>>176
うちょっ、と思てやってみたら、
526249バイトになりました。だいたい合ってますね。
メッセージ見ると要らないライブラリまでincludeしてるような感じ。
もちょっと大きいスクリプトでやってみると、増大比率は少なくは
なりました。うーん、perlcc使ってるって話し聞かないとこ見ると
速さもあまり期待できないのかな。perlccってperlインストしてな
い人にプログラム渡すのに使うぐらい?
0178nobodyさん02/10/01 09:18ID:ax7rnh/7
PerlってCを取り込めますけど、Cを取り込んでCGIを速くする
って話ありますか?ヒントとか参照HPでもいいですので、教え
てくらはい。
0179 ◆AOHU.zVE 02/10/01 13:44ID:???
製作者の技術力に依存してる気がしますけど...
Storableモジュールは高速化のために中核部分をCで書いていると
ドキュメントの中で謳っています。
0180nobodyさん02/10/01 15:59ID:???
>>179
情報ありがとうございます。
今度、StorableモジュールとやらをCPANからもらって、
調べてみます。見通しが付いたら、両方で書いて(Perl単独およびPerl+C)、
速度比較でもやって見ます。
0181 ◆AOHU.zVE 02/10/01 19:28ID:???
XSで書くかInline::Cで書くかって違いも..
0182nobodyさん02/10/02 07:15ID:???
>>181
調べてみます。ありがとう。
0183nobodyさん02/10/08 15:14ID:???
age
0184 ◆PxAOHU.zVE 02/10/08 19:12ID:???
>>182
調べた結果はどうだったんだろう^^;
0185nobodyさん02/10/11 22:29ID:???
>>184
ごめんなさい。20日まで忙しくて試せないでいましゅ。
今月中には絶対書き込みますからね。
0186nobodyさん02/10/15 13:08ID:???
age
0187山崎渉03/01/15 13:49ID:???
(^^)
0188y03/02/02 18:18ID:NYuXUMpJ
ローカルでCGIを動かしたところ,うまく動作しました。
で,インターネットテンポラリーファイルとクッキーを削除したら
クッキーが復活しません。
どうしたらいいですか?
0189nobodyさん03/02/04 09:06ID:???
どうしようもありません。
0190nobodyさん03/03/05 01:53ID:???
>>188
http://www.finaldata.ne.jp/
これを使え。
0191山崎渉03/03/13 17:21ID:???
(^^)
0192山崎渉03/04/17 12:22ID:???
(^^)
0193山崎渉03/04/20 06:11ID:???
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0194nobodyさん03/04/20 23:42ID:???
こっちのスレッドに書き込むべきだった。。。
yy-bbsを使っているんですが、書き込みをすると
Write Error : ./past/1.dat
とエラーがでます。今までは書き込めていたんですが…
修正方法を教えてください。
お願いします。
0195nobodyさん03/04/21 02:25ID:???
>>194
こっちのスレじゃなくてさ、作者に聞きなさい。
019619403/04/21 10:13ID:???
>>195
そうですよね。もうしわけございませんでした。
0197nobodyさん03/04/23 14:36ID:Y+rCnBKs
ファイルから読み込んだデータと追加したデータを
ひとつの配列にして1行ずつファイルに保存したいんですが
foreach $tmp (@arraytmp) {
print FILE $tmp;
}
@arraytmpのなかに
arraytmp[0]=100
arraytmp[1]=200
arraytmp[2]=300
とはいっていて
追加したデータがarraytmp[1]=200だとすると
出来上がったファイルには
100200
300
と保存されてしまいます。なぜでしょうか?
0198nobodyさん03/04/23 15:01ID:ri9RwL1r
>>197
foreach $tmp (@arraytmp) {
chomp $tmp;
print FILE "$tmp\n";
}
0199nobodyさん03/04/23 15:25ID:Y+rCnBKs
>>198
改行コードのごみだったんですね。
ありがとうございます。
0200nobodyさん03/04/24 01:57ID:???
グーのゲストブックのようなhtmlを書き出すCGIがほしいのですが
サイトの更新に流用してみようかと思っていますが
シンプルな設計の物が見つかりませんが(ソースをのぞいて改造できるような)

誰か作って
0201nobodyさん03/04/24 21:41ID:???
>200
百合の脳ではどんなにシンプルなソースでも無理だろ。
悪い事はいわねぇから、一生シコってろ。
0202nobodyさん03/04/25 16:13ID:pfyzLZQq
ファイルに
XXX.XXX.XXX,1000
AAA.AAA.AAA,900
BBB.BBB.BBB,800
と保存されているのを
2次元配列に読み込むには
どうプログラムを書けばよろしいでしょうか?
ARRAY[0][0]=XXX.XXX.XXX ARRAY[0][1]=1000
ARRAY[1][0]=AAA.AAA.AAA ARRAY[1][1]=900
こんな感じに入れたいです。
0203nobodyさん03/04/25 16:22ID:7K2kLxLS
>>202
ファイルフォーマットはそれで間違いない?

英字3文字,英字3文字,英字3文字,数字
0204あぼーんNGNG
あぼーん
0205あぼーんNGNG
あぼーん
0206nobodyさん03/04/25 16:34ID:pfyzLZQq
>>203
今の所はXXX.XXX.XXXはIPと思っていただきたいですが
何らかの文字列になるかもしれません。数字をおくってきた
ユーザーIDみたいなのも保存したくて。
0207nobodyさん03/04/25 16:43ID:pfyzLZQq
まずは一行ずつ読み込んでそれからsplitで分割してそれぞれを別の配列に
読み込んだほうがいいのかも。
0208nobodyさん03/04/25 16:48ID:???
>>207
分割するためには区切り文字か位置がわからないとできないだろ。
正規表現を使うとしても元になる文字列が決まらなければ書きようがない。
もうちょっとやることはっきりさせてから出直して来い。
0209nobodyさん03/04/25 18:07ID:pfyzLZQq
区切り文字は","だ!
それに今つくってる
0210nobodyさん03/04/25 19:03ID:???
>209

ほんっと初心者なんだな
0211nobodyさん03/04/28 19:34ID:D5LqjkLM
CGIファイル内でテキストファイルを読み込み、そのテキストの内容を
表示したいのですが、そのテキストファイルにはCGIファイルで使われている
変数を書いておき、CGIを実行することで変数に入ってる文字列を
表示することってできますか?

例えば、
hyouji.cgiで$aaaという変数が使われていて、そこには乱数で文字や数字が入る。
で、text.txtに$aaaと書いておいて、hyouji.cgiを実行すると
文字または数字が表示される、みたいな。
何度か挑戦してるんですが、私がやると乱数で発生させて文字列ではなく、
「$aaa」ってそのまま表示されてしまうんです。
無理でしょうか?
0212nobodyさん03/04/28 19:38ID:???
>>211
ソース出してみなよ
0213あぼーんNGNG
あぼーん
0214あぼーんNGNG
あぼーん
0215あぼーんNGNG
あぼーん
0216あぼーんNGNG
あぼーん
0217nobodyさん03/04/29 08:34ID:D0OVl6+R
CGIについての初心者の質問はここでいいのでしょうか?
0218nobodyさん03/04/29 08:41ID:D0OVl6+R
http://ns.kita.ne.jp/~fanfare/kifbbs/tboard004.cgi
のように、アプレットが開くように改造するには、
どうすればよいのでしょうか?

チェスのPGNファイルを同じように開きたいと思っています。
<applet codebase="http://www.chessclub.com/chessviewer/"
code=ChessViewer2.class
archive=ChessViewer2.zip
width=570
height=460 >

このようなものを組み込めばいいような気がするのですが、どうすればいいでしょうか?
0219nobodyさん03/04/29 08:44ID:D0OVl6+R
私も同じTBOARD004を使っています。
どうか教えてください。
0220マリモーマ ◆r6PDGT6Xd2 03/04/29 09:26ID:pAb9kG4X
>>281 >.289
cgi は アプレットじゃなく ssi だよ
0221マリモーマ ◆r6PDGT6Xd2 03/04/29 09:27ID:pAb9kG4X
>>218 >>219 の間違い
0222nobodyさん03/04/29 09:54ID:???
>>220
それはネタか?
022321803/04/29 21:40ID:WfvwlBvk
教えてくれない・゚・(ノД`)・゚・
初心者の質問コーナーはここなのでしょうか?
0224nobodyさん03/04/29 22:11ID:???
>>223
【 スクリプト改造工房 PART 6 】
http://pc2.2ch.net/test/read.cgi/php/1047806915/l50
0225nobodyさん03/05/03 21:02ID:atZSdvcr
ここっぽいかな?

SSIでアクセスログ取ってるんですけど、
採取元がフレームページの場合って、リファ取れないんですか?
フレームのメインhtmlの<frameset>の前にSSIコマンド貼り付けたのですが、どうしても
リファがとれません。
フレームのページにSSI貼り付けると、フレームのメインhtmlがリファになってしまいます。
どうすればいいですか?
0226nobodyさん03/05/03 23:09ID:???
>>225
そこら辺はようわからんが、
フレームの定義をしているページにアクセスログを仕込めばいいんじゃねーの。
0227nobodyさん03/05/03 23:19ID:gpUc1okd
>>226
俺の言い方悪かった。
フレームのメインhtmlを俺はフレームを定義しているページと、いいたかった。
スマン
0228nobodyさん03/05/03 23:46ID:???
>>225
ttp://www.bayashi.net/st/pdmemo/frmaxs.html
0229nobodyさん03/05/04 00:39ID:P/xVSP3r
CGIにカウンタをつけるにはどうしたらいいんですか?
0230nobodyさん03/05/04 00:42ID:???
>>229
改造でも埋め込むのでも・・・
023122903/05/04 00:47ID:P/xVSP3r
掲示板にカウンタを付けたいのですが、
カウンタのプログラムを別にするのか、
それともそのCGIのなかに書き込めるのか
わからなくて
023222903/05/04 00:50ID:P/xVSP3r
できればCGIのなかに入れたいんですが・・・
■ このスレッドは過去ログ倉庫に格納されています