CGIだけど、なんか質問ある? part 6
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
02/04/23 20:28ID:Kp0cZQna<<注意:CGIは特定の言語に依存するものではありません>>
Perlのコーディングに関する質問はこちら
【Perl】初心者コーナーPart11
http://pc.2ch.net/test/read.cgi/php/1017201229/
過去ログは>>2
0207nobodyさん
02/05/11 16:56ID:???そのスクリプトDLしてきました。あなたは大きな誤解をしていると思います。
このスクリプトは index.htm をブラウザに表示させたら <!---BBS---> の部分に
掲示板が表示されるのではなく、minibbs2_279.cgiをブラウザに表示させたら
index.htmの<!---BBS--->部分に掲示板が表示されるものだと思います。
ttp://www.midnightroam.org/ にアクセスしたら掲示板がでているではないかと
言われるかもしれませんが、.htaccessでいじれば ttp://www.midnightroam.org/
と入力したときに index.htmlではなくindex.cgi にアクセスさせることができます。
つまり、アクセスはあくまでbbs.cgiであり、前後に他の何かを
表示させたいのならテンプレートhtmlを好きに編集すればいいという
だけです。
0209198
02/05/11 16:57ID:???ほんとくだらねえ質問にお付き合いくださってどうもありがとうございました。
0210nobodyさん
02/05/11 16:57ID:???そのサイトは DefaultIndex を .htaccess か何かで弄っているんでしょ。
index.html無いし。
0211nobodyさん
02/05/11 16:58ID:???0213あぼーん
NGNG0214nobodyさん
02/05/11 17:27ID:WnQgyRupパーミッションの設定の仕方がわかりません。
ファイルは大学から某有料サーバーへ転送しているのですが、
大学はunixなのでコマンドラインのftpしか使えません。
有料サーバーはTelnet禁止です。
状況説明不足でしたら補足します。
0215nobodyさん
02/05/11 18:02ID:???cgi本体は755、jcode.plは644
0216nobodyさん
02/05/11 18:06ID:WnQgyRupすみません、何を質問してるのかもっと詳しく書くべきでした(汗
215さんの言っている事はわかります、
その変更をどうやって行ったらいいのかわからないんです…
telnet禁止なのでchmodは使えないし、
あらかじめ設定してから転送しても元に戻っているし…
ftpでログインしたのならchmod使えばいいだけでしょ。
コマンドはmanで調べればいい。
以降、UNIX板ででも聞いてください。
0219nobodyさん
02/05/11 18:26ID:WnQgyRupFTPのマニュアルは読みましたが
パーミッションを設定するという類のコマンドは
見つかりませんでした。
0220nobodyさん
02/05/11 18:28ID:WnQgyRupInvalid commandでした…
UNIX板逝ってきます…。
0221nobodyさん
02/05/11 19:33ID:???>>214
どんな ftp クライアント使っているか解らないけど…
一応、大抵の ftp クライアントで使える方法教える
>site help
これで、chmod 使えるかどうかは解る
>site chmod <permit> <filename>
んで、これで <filename> で指定したファイルが <permit> で
指定されたパーミッションになる
0222nobodyさん
02/05/11 19:45ID:???データベースをCGIで作りたいと考えていますが、
なにを勉強すればいいのかさっぱりです。
どこか初心者向け勉強サイトがあれば教えていただけませんか。
本はダメです。お金がないから。
0223nobodyさん
02/05/11 20:24ID:1yiBbWMEどげんしたらよいでしょうか?
0224nobodyさん
02/05/11 20:28ID:???このサイト結構使えるYO!
http://google.com
0225nobodyさん
02/05/11 23:40ID:JXrRw2rRほかのサバはできるけど、Triだけなぜか設定しても、設定が反映されないという意味
0226nobodyさん
02/05/12 00:05ID:???Tripod CGI パーミッション 設定 できない
http://www.google.com/search?num=100&hl=ja&as_qdr=all&q=Tripod+CGI+%83p%81%5B%83%7E%83b%83V%83%87%83%93+%90%DD%92%E8+%82%C5%82%AB%82%C8%82%A2&btnG=Google+%8C%9F%8D%F5&lr=lang_ja
0227nobodyさん
02/05/12 14:30ID:???画像を用意しなければならないのでしょうか?
0228nobodyさん
02/05/12 14:36ID:???画像を変えることで、累計と今日/昨日違いをわかりやすくしてんじゃないの?
いやなr設定のとこ書き換えて累計用と今日/昨日用の画像同じの使うようにすればいいじゃん。
0229nobodyさん
02/05/12 15:30ID:u+TnkKJYCGIの神。
0230227
02/05/12 16:15ID:???あーなるほど、つまり仕様の問題上そうするしか仕方ないとかそんなんじゃなく、
単に累計用カウンタと今日/昨日用の画像に違う画像を使いたいって時のためか。。
あと今KENTさんのコード見ながらカウンタを作ってみたんですが
ちょっとロック処理の部分で分からないところがあります。。
ロック処理サブルーチンの一部分↓↓↓↓
if (-e $lockfld)
{
# 現在時刻を取得し$nowに代入
my($now) = time;
# $lockfldの最終変更時間
my($val) = (stat($lockfld))[9];
# 30秒以上経過していれば削除
if ($now - $val > 30) { &lockend; }
}
exit
↑↑↑↑ここまで
下に続く
0231227
02/05/12 16:16ID:???--------------------
ログ読み込みからログ更新までの間、同じ階層にフォルダを作って
フォルダがある場合は他のユーザーを弾くようにして、
上の処理ではもしロック処理が終了したにも関わらずフォルダが削除されなかった
場合に、そのフォルダの最終変更日を取得し、現在時刻と比較し30秒以上経過して
いたらフォルダを削除するようにしてあるんです。
で、なにがダメかというと、上の処理のコードの書き方を簡略化しようと思い、
以下のようにしましたが、なぜか下のコードだと動きません。なぜか分かるでしょうか?
ここから↓
if (-e $lockfld) || exit;
# 現在時刻を取得し$nowに代入
my($now) = time;
# $lockfldの最終変更時間
my($val) = (stat($lockfld))[9];
# 30秒以上経過していれば削除
if ($now - $val > 30) { &lockend; }
0233227
02/05/12 18:44ID:???コマンドラインとは?
うちのテスト環境はWin98SEにApacheとActive Perlで
http://localhost/にアクセスして試してるんですが。。
0234nobodyさん
02/05/12 18:47ID:???0236nobodyさん
02/05/12 20:10ID:???0237nobodyさん
02/05/12 20:50ID:???0238232
02/05/12 21:01ID:???コマンドラインもわからんのか・・・(;´Д`)
しかも指摘されてもわからんのか・・・(;´Д`)
悪いことは言わない、
ttp://pc.2ch.net/test/read.cgi/php/988809842/
ここの本を一冊選んで勉強しる。
君はソースをいじるにはまだ早すぎる。
98ならDOSプロンプトからcgiのあるディレクトリに移動して
>perl hogehoge.cgi
を実行してエラーメッセージ見れ。
それ以前の問題だが。
0239227
02/05/12 22:05ID:???DOS窓開いたあとCGIが置いてあるとこまでどうやって移動するんですか?
あとこのカウンタCGIはHTMLファイルから呼び出すためバイナリに変換しちゃってあるんですが
それでもDOS窓で実行してちゃんと表示できますか?
if (-e $lockfld) || exit; # (^∀^)ゲラゲラ
まだはじめたばっかでよくわからんのですが
この場合$lockfldが存在していたら真の値、存在しなければ偽の値を返すんじゃないんでしょうか・・?
0240nobodyさん
02/05/12 22:20ID:???0241nobodyさん
02/05/12 22:27ID:???はっきり言おう。
足し算、引き算すら知らない赤ん坊に掛け算や割り算を教えることは出来ない。
まず適当な本を読んで、コマンドラインの概念とPerlとは何かを勉強してくれ。
0242nobodyさん
02/05/12 22:35ID:???>CGIはHTMLファイルから呼び出すためバイナリに変換
はぁ??????????実はCか????????????
「ZIP圧縮しますた」じゃないだろうな?????????
>DOS
DOSコマンドくらいサーチエンジンで検索しろ。
>if
スレ違い。perl初心者スレへ。
とはいえそこでも叩かれるだろうから、まず初心者本で勉強してこい。
0245nobodyさん
02/05/12 23:29ID:???0246nobodyさん
02/05/12 23:31ID:???0247nobodyさん
02/05/12 23:32ID:???0248242
02/05/12 23:33ID:???画像を出力するためにbinmodeで出力してるってことか?
なら>>239の文おかしいぞ。
当然DOSで画像なんか見えないが、動くか動かないかのデバッグには十分。
さらにbinmodeをバイパスして print $count とでもしてやれば
正常な動作をしてるかも確認できる。
つか、「教えてください」の前に本を読もう、検索しようって気はないわけ?
241に初心者向けPerl講座をしてもらおうとでも思ってるのか?
しかもどこがバグってるかは>>234が煽りながらも教えてるだろ?
それでもわからんってのなら、今ここで教えたところで同じことの繰り返し。
根本的なことがわかってないんだから、あんたが成長することはない。
またわからんことが出てきてデバッグもせずに「教えてください」だ。
書いててムカついてきた。
0250nobodyさん
02/05/12 23:42ID:???0251nobodyさん
02/05/12 23:50ID:NU8cGT9R500 server error になるときととならないときがあるようなのですが、
(自分のサーバでも、他人のサーバでも)
なぜ、こういったことが起こるのでしょうか?
0253nobodyさん
02/05/12 23:59ID:8gtC1EoY:02/04/24 19:53 ID:I6zo9Id0
今日、家に帰る途中、毎週水曜日はCDsingleのリリース日だから
TSUTAYAに行って、今日発売の
「Free & Easy」 浜崎あゆみ
「Feel fine!」 倉木麻衣
「人生がもう始まっている」 市井紗耶香
「あなたと握手」 aiko
「Forever to me〜終わりなき悲しみ〜」 the brilliant green
の5枚を借りようとしたんだけど、倉木、市井、aikoの3枚しかなく、
浜崎とブリグリがなかった。
とりあえず先の3枚をもってカウンターに行って、
「浜崎とブリグリないんですか?今日リリースなんですけど」
と聞いたら、店員は何か調べて、
「それでしたら、5月11日になりますね」
とかほざきやがった。
別に従業員に罪はないけど、
「どうしてそんなに待たなきゃいけないんだよ!」
とどなりたくなった。
人気曲をしっかり発売日に貸し出ししないTSUTAYA、マジで逝ってよし!
0254nobodyさん
02/05/13 00:57ID:VkobrxXo答えてないやん
0256nobodyさん
02/05/13 05:58ID:CXLX/RBXttp://best.he.net/cgi-bin/error500
に飛ぶようになりました
変更はなにもしていません。以前は動いていたのに…
さっぱわややなんです。お願いします。なにがだめなんでしょう?
0257227
02/05/13 07:32ID:???そのCGIがある場所まで移動して
perl -cw xxx.cgi
を実行したんですが、
コマンドまたはファイル名が違います
と表示されてしまいます。
アパッチは起動させなくていいんでしょうか?
0258nobodyさん
02/05/13 07:36ID:???0259227
02/05/13 07:59ID:???(-e $lockfld) || exit;
これで出来ました。。
0260nobodyさん
02/05/13 13:22ID:???0261nobodyさん
02/05/13 14:46ID:???で別のCGIに飛ばすとき、引数を与えたいのですが
xxx.cgi?a=hogeやxxx.cgi/hoge
のように、ブラウザに内容が表示されないようにする
(つまりPOSTメソッドとして送る)にはどうしたら良いんでしょうか?
0264nobodyさん
02/05/13 17:55ID:mmQ/BpPPサムネイルの作成をしたいのですがレンタル鯖でやる方法はあるんでしょうか?
ファイルサイズを小さくしたので見かけだけのではないやつのほうで・・・
よろしくおねがいします
0265nobodyさん
02/05/13 18:39ID:IVeSrRB+ダウンロード数加算
↓
print "Location: file.lzh\n\n"; で標準のファイル保存処理開始
まではいいんですが、この後ダウンロードカウンタを起動したページ(HTML)から
指定したページへリダイレクトしたいんですが
ダウンロードカウンタCGIにて最後に print "Location: file.lzh\n\n"; しているため
そこから他のURLにリダイレクトさせようとしてもうまくいかないようで・・・・
なにかイイ方法ないでしょうか
0266nobodyさん
02/05/13 19:19ID:???レンタルだろうがユーザCGIの設置が許されていればできるでしょ。
>ファイルサイズを小さくしたので見かけだけのではないやつのほうで
意味不明
0267nobodyさん
02/05/13 19:57ID:???>>264は width = XXX で見た目のサイズをかえたものではなく、
画像ファイル本体のサイズが小さくしたいらしい。
しかしあれだな。
あぷする奴は、2つ画像をあぷする必要があるというウザイ掲示板だなw
0268nobodyさん
02/05/13 19:57ID:???こんな感じの掲示板で、レスをつけた時に
http://bbs.fresheye.com/w/sample/template01.html
こんな風にレスが付くようにするには、どうしたらよいのでしょうか?
もし難しいようなら、あきらめます。
0269nobodyさん
02/05/13 20:08ID:mmQ/BpPPPerlMagickのようなことをしたいのですが
perlスタンドアローンでは無理ですか?
置きたい鯖にはGDはインストールされているようなのですが
0272nobodyさん
02/05/13 21:38ID:???いくつかのアクセス解析を使っても同じ現象ですが、どうしてでしょうか?
0274nobodyさん
02/05/13 22:33ID:???http://pc.2ch.net/test/read.cgi/perl/1017239089/
大きなお世話だが・・・。
上記のスレ見たらわかると思うけど
正直トクトクはとっとと解約することをおすすめする。
いやまじで。cgi使うならなおさら。問題ありすぎ。
板違いすまん。
0275nobodyさん
02/05/14 08:20ID:???CGIの負荷っていうのは、何で表すのですか?
0277nobodyさん
02/05/14 09:36ID:???0279nobodyさん
02/05/14 13:39ID:???でも管理人が何か仕掛けてる可能性がないとはいえない。
こういうの↓とか。
ttp://dream.lib.net/room/cgi/e_acsdeny.html
0280nobodyさん
02/05/14 20:52ID:pl0vJyTjCGIの負荷で今のサーバーに出て行ってくれと言われています。
他のサーバーを捜してるのですが、どこも高負荷の場合って感じで、
基準が判りにくく、借りる前に尋ねようと思っていますが、
どう言えばよいのでしょうか?
転送量の場合なら、「200MB/日ですが・・」とか言えるのですが、
負荷ってどう言えばよいものなのでしょう?
レンタル鯖板で尋ねたのですが、まともな回答をしてくれないので、板違いとは知りながら、すみません。
0282275
02/05/14 23:59ID:wFMcGqPhすみませんです・・・
検索CGI(Yomi-Search)です。
0283nobodyさん
02/05/15 01:04ID:GynYD0C5貴社でスペースを借りられますか。
0287ラナ ◆ZrzN4KAA
02/05/15 20:12ID:tzVRVO3YSSIを使ったらshtmlにしないといけないっぽいので
そうしたらindex.htmlじゃなくなったのでTOPページに使えなくなりました
どうすればいいと思われますか??
0288nobodyさん
02/05/15 20:13ID:???↑こんな質問してる奴がレスサンクスだって。ははは。
0289nobodyさん
02/05/15 20:49ID:???・1 .htaccessいじってhtmlファイルでもSSIを有効にする。
・2 .htaccessいじってindex.html以外(この場合index.shtmlを)をデフォルトファイルにする。
・3 index.htmlに<META HTTP-EQUIV="refresh" CONTENT="0; URL=http://www.hoge.com/main.shtml">
と書いてshtmlファイルに飛ばす
.htaccessのことはここで勉強しる
ミケネコの htaccess リファレンス
http://www.mikeneko.ne.jp/~lab/web/htaccess/
0290ラナ ◆ZrzN4KAA
02/05/15 20:56ID:tzVRVO3Y0291nobodyさん
02/05/16 00:11ID:4a3PIIUr--------test.dat-----
あ
い
う
え
お
か
き
---------------------
上のように縦に一文字ずつはいったファイルを開いて、再び同じものを書き込むだけなんですけど、
あ
い
う
、、、、、、
何故かこんな感じで一行目以外は頭に半角スペースがはいっちゃうんですけど、
これって仕様?
ソースは下です、いくらやっても直らなくって、、、
ちょっと見ていただけませんか?おねがいします。
$file = "test/test.dat";
open(IN,$file);
@line = <IN>;
close(IN);
open(OUT,">$file");
print OUT "@line";
close(OUT);
0293292
02/05/16 00:27ID:???0294291
02/05/16 00:50ID:4a3PIIUrありがとう!!!
あれ、スレ違い?CGIの話なんだけど
まぁ、さんきゅー、助かりましたですよ。
0295291
02/05/16 00:51ID:???0296げ鬱
02/05/16 01:27ID:vvhWlVEP要はHTMLを一行ずつ読んでいき、正規表現でマッチした$1,$2をそれぞれ$name($i),$value($i)に入れていけばいいんでしょうか。
悶々として寝付けません。。。
0298
02/05/16 02:26ID:rj5zflYZ0299
02/05/16 02:27ID:5PmXmU1X0300
02/05/16 03:16ID:5PmXmU1X0301nobodyさん
02/05/16 06:18ID:AfPPR3wG<INPUT type="checkbox" checked name="a">A<BR>
<INPUT type="checkbox" checked name="b">B<BR>
ってチェックをつけた人間だけにメールを送りたいのですが
CGIでチェックをつけたやつだけのメアドを$adressに代入したいのです
読みとり、代入部分はどのようにすればいいでしょうか?
厨房にはさっぱりなのでお力添えお願いします
0302nobodyさん
02/05/16 06:28ID:AfPPR3wGご教授頂ければ幸いです。
順番としては
1 チェックした人間だけを抽出
2 それぞれに対応する変数をメアドに変換
3 メアドを $adress に [email protected] [email protected] って感じで代入
ですかね よろしくお願いします
0303nobodyさん
02/05/16 13:11ID:pFnKXSKS今まで正常に動いていたのですが、突然サーバーエラーが出るようになりました。
以下のように、グローバル変数に何か代入する文をいれただけで
Internal Sever Error が発生するようようです。
コマンドラインから
$test.cgi
で実行すると問題なくhtmlを吐くのですが、htmlから呼び出されると
エラーになってしまいます。
こういう現象で何かヒントがあればお願いします。
int main(void)
{
today_date = 25; // データ処理される日付(グローバル変数)コメントにすると通る。
test_cgi(); // Hello Worldを表示するだけのテスト関数
return 0; // エラー発生中の非常手段。
・・・普通の処理。
}
0304narucy56 ◆wMOjCT4s
02/05/16 13:35ID:DuKoWpQw俺の意見としては。
* Java から派生するモノ
* Struts などのフレームワークを用いた開発
* それよりもベンダーから作られた WebObjects を使った開発
Java で Web 開発っていうのは、少々オーバテクノロジーなような気がしてる
* PHP
下手すると環境に依存するスクリプトを書きがち。言語仕様も今ひとつ。
* Ruby + modruby + eruby
シンプルかつ強力。しかし、実際に使っている人が少ないのが難点か。
スクリプトが楽でサッと作れる環境ってのもいいと思う。
やっぱ Ruby を使いたい。
0307nobodyさん
02/05/16 22:13ID:/e1q/rGThttp://www.rescue.ne.jp/cgi/2shot4/
を
使えるネット
http://www.tsukaeru.net/default.php
に置きたいんですけどデフォルトで無理みたいなんです。
何処を書き換えればよろしいのでしょうか?
■ このスレッドは過去ログ倉庫に格納されています