トップページ⇒php
990コメント300KB

CGIだけど、なんか質問ある? Part 10

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん03/03/26 22:47ID:44KxXtaW
CGIの運用に関する質問スレッドです。

※CGIは特定の言語に依存するものではありません。

※Perlのコーディングに関する質問は専用スレがありますのでそちらでお願いします。
  ↓
【Perl】初心者コーナー Part21
http://pc2.2ch.net/test/read.cgi/php/1047980851/l50

過去ログ・関連スレッドは >>2-5 あたりに
0666nobodyさん03/05/20 00:02ID:???
>665
それは運用上問題が出てるだろ。
「運用上問題のないレベル」が前提の話で何を言ってるんだ。
0667nobodyさん03/05/20 07:10ID:???
>>665
君がそう思うなら、そうかもしれないね。
0668nobodyさん03/05/20 08:03ID:???
>665
航空機は違う、ATMはそうかもしんない、>666に対してはその指摘は妥当する。
車社会で交通事故死亡者が1万人/yくらいいても運用しなきゃいけない、と例えれば納得?

>667
君がそう思うなら、そうかもしれないね。
0669nobodyさん03/05/20 08:21ID:???
>>668
マネすんなよ
0670nobodyさん03/05/20 09:44ID:???
>「運用上問題のないレベル」が前提の話で何を言ってるんだ。

だったら最初から質問にもならないはずなのに。
何らかのかたちで問題が浮上することを頭の片隅で予想できてしまっている
ということではないの?
そういう状態にOKを出すというのは、とても問題でしょ。
ということが言いたいだけ。
0671nobodyさん03/05/20 10:09ID:???
まあ、いいじゃん。問題が出たら直せば
0672nobodyさん03/05/20 10:47ID:???
経営者や営業には、プログラマが持つような職人意識はないと知れ。
そんな連中は、>>671 のようなことを考えてる。
しかも、直すのは自分ではない。だからこそそんな無責任なことが言える。

納期とかなんとかは、本来プログラマたちがストライキを起こしてでも確保すべき資源なんだ。
うまく言いくるめられてるプログラマたちが多すぎ。
0673nobodyさん03/05/20 11:20ID:???
基本的にプログラマはマゾです。
0674nobodyさん03/05/20 13:41ID:???
>672
経営者や営業ほど問題を嫌がると思うけどな。
問題が起きた時、プログラマはプログラムを直せばいいだけだが、
経営者や営業は顧客の信用回復に奔走させられる。
信用を得るのには1年かかるが、失うのは1日で足りる。

まぁ、そのリスクと納期を天秤にかけた時どっちをとるかはその会社次第だろうが。
0675nobodyさん03/05/20 13:49ID:???
妙にスレタイと合致している話題ですね。
067665603/05/20 14:39ID:???
もちろん完璧なプログラムを組むのが理想なんでしょうけど、
私の場合、配布されているスクリプトではお客さんの性質もあり、
半角文字化けが多発するのは運用上の大問題なわけです。。

ここで長々とスクリプトをどう改造すればよいかと聞くのも何ですし、
未知の不具合には目をつぶり、お手軽な方法を取ってしまいました。

でも2ちゃん掲示板等ではしっかりと半角が文字化けせずに投稿できるので、
スクリプトを工夫すればなんとかなるであろうことは、素人の私にも分かります。

これで良しとはせず、もう少し調べてみようと思います。


スレ汚しスマソ
0677nobodyさん03/05/20 19:43ID:???
>>670 いいこというねえ。
0678nobodyさん 03/05/20 21:54ID:???
UTF-8が使えるんだったら、eucなりsjisなりの文字列を変換しちまえば
絶対文字化けしないけどな・・・
0679nobodyさん03/05/21 04:10ID:???
>678
変換する時にどっちなのか判断間違えて文字化けするんだっつーの。
0680nobodyさん03/05/21 06:42ID:???
<form action="cgi" method="post">
 :
<input type="hidden" name="jcode" value="あ">
 :
</form>

 ↓

%form;
read(STDIN, $_, $ENV{'CONTENT_LENGTH'});
foreach (split(/&/)) {
my ($name, $value) = split(/=/);
$value =~ s/%([a-fA-F0-9]{2})/chr(hex($1))/eg;
$form{$name} = $value;
}
if ($form{'jcode'} =~ /\x82\xa0/) {print "S-JISだよ。jcode.pl使わないよ"}
if ($form{'jcode'} =~ /\xa4\xa2/) {print "EUCだよ。jcode.pl使うよ"}
0681nobodyさん03/05/21 09:57ID:???
SJISのいわゆる半角カナだけの文字列は
EUCの文字列と判別不可能なの。
0682nobodyさん03/05/21 13:41ID:???
100%化けてはダメという条件であれば100%化けない方法を考えなきゃいけないと
思うし。技術的に95%までしか無理なんだったら、そう営業に伝えて95%であることを
客に飲んでもらわなきゃいかんと思う。
それを自分の技量を棚に上げて、「運用上問題ない」とか判断して注文を
無視しているいる所にむかついてた。
0683nobodyさん03/05/21 15:24ID:???
>680
過去に、form内の要素一つずつ
別の文字コードで送ってくるブラウザがあったのでそれでもあてにならん。
0684nobodyさん03/05/21 16:18ID:???
2ちゃんはjcode.pl使ってないの?
0685nobodyさん03/05/21 21:05ID:???
>684
2chはPerlじゃありませんから。
0686nobodyさん03/05/21 23:39ID:???
質問。Locationを使って別のページに飛ばしたいんだが、
飛ぶときと飛ばないときがある。なんで?そんなことってあるの?
調べたところ一部のサーバーではLocation禁止というところも
あるみたいだが、うちは飛ぶ。

でも飛ばないときもある… 
0687nobodyさん03/05/21 23:49ID:???
>>686
広告付きの無料スペースだからとか
0688nobodyさん03/05/21 23:52ID:???
最近はbbs.cgiもCで書き直したの?
0689nobodyさん03/05/22 00:00ID:???
>>687
なんでわかったの??
広告付きの無料スペースだとそういうことがあるんでつか??
0690nobodyさん03/05/22 01:01ID:???
>>689
鯖によっては広告がLocationヘッダの邪魔をする場合があるな。
metaに変えるか、htaccessでLayoutIgnoreURI *.cgiやってみるとか。
0691山崎渉03/05/22 01:55ID:???
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
0692nobodyさん03/05/22 19:44ID:MWXX6xXG
アクセスカウンターについて質問させてください。

アクセスがなくても数分ごとにカウンターの数が増えたり
1回アクセスがあるとランダムで1または1以上カウンターの数が増えるような
胡散臭いアクセスカウンターは作れるでしょうか?
どなたかご教授ください。
0693nobodyさん03/05/22 19:51ID:???
>>692
はい、作れます。
0694nobodyさん03/05/22 20:13ID:MWXX6xXG
>>693さん
ええと、それはごく普通のカウンターのCGIを少し改造すれば可能な事なんでしょうか。
出来ればその方法を少し具体的に教えていただけるとありがたいのですが。
0695nobodyさん03/05/22 20:44ID:???
>>694
以下の二つの点で頭が悪すぎです。
1.無駄に訪問者を多くみせかけようとする
2.その程度、人に聞くより自分で考えた方が早い
GWは終わりましたよ?
0696nobodyさん03/05/22 20:45ID:???
>>694
まず、
> アクセスがなくても数分ごとにカウンターの数が増えたり
こんな事はしなくていい。
アクセスがないときにカウンタを回して誰が見るの?

> 1回アクセスがあるとランダムで1または1以上カウンターの数が増える
1からあなたが望む数までの数字をランダムで発生させるルーチンを作る。
アクセスがあったら、今までのアクセス数に、発生させた数字を加えて新たなアクセス数として表示する。
0697nobodyさん03/05/22 21:23ID:4XPxMPwJ
http://life.fam.cx/
0698nobodyさん03/05/22 21:48ID:???
>>695-696さん
694です。
どうもお手数かけました。ありがとうございます。
0699nobodyさん03/05/23 07:30ID:xpCjHE6k
掲示板などで書き込みでどうやったら速く負荷がかかりにくいんでしょうか?
一般的に、書き込む場合
ログを読み込む>内容を変数に入れ>内容の入った変数+書き込む内容>ログに書き込む
ような処理をして効率悪く思います。この他にはどういったやり方がありますか?
0700nobodyさん03/05/23 08:26ID:???
>>699
そういうことは、他の人の掲示板をDLしてきて、
どんな処理してるのかソースを読みましょう。
0701nobodyさん03/05/23 08:27ID:???
>>699
追記モードで書き込めば、読み込みしなくていいぶん負荷は減るかも。
でも普通は書き込みより読み込みのほうが圧倒的に処理回数が多いわけだから
2ちゃんぐらいの規模でもない限り、あんまり効果は期待できない感じがする。
0702nobodyさん03/05/23 08:30ID:???
>>699
えっ!毎回、ログも書き込むのか?
070369903/05/23 09:41ID:J32UtBFo
これでも一応プログラムで飯食べてる者ですが、
なにぶんパールは初心者なもので知ったかでBBS作ってみたのです。
作ったBBSは半年以上触っていませんが、久しぶりに触ってみようかなと・・

>>700
KENTさんのBBS見ても何が悪いのかさっぱりなんです。あれの何処が悪いの?
0704nobodyさん03/05/23 10:29ID:???
>703
最初は Kurl で勉強してから perl に移行する。
これ常識。
0705nobodyさん03/05/23 10:40ID:???
>>703
何処が悪いって、何処か悪いの?
どれだけ負荷を与えない処理をするか・・・
それは、ログの管理の仕方によっても違ってくるし、
ログの出力の仕方によっても変わってくる。

とにかく、基本的には・・・
いかにファイルからの入出力のデータ量を減らすか。
BBSはこれが一番の課題だと思う。
もちろん、特殊な出力の仕方とかしてたら、
他にも課題はあるだろうけど。
0706nobodyさん03/05/23 11:41ID:aeupPdc0
ttp://sd-7.net/cgi-bin/alpha2/wforum.cgi?mode=allread&no=9195&page=10
0707nobodyさん03/05/23 11:47ID:???
>>706
風に吹かれてるようでカッコイイじゃねーか(゚д゚)
0708nobodyさん03/05/23 13:11ID:???
>これでも一応プログラムで飯食べてる者ですが、
なのに、「パール」とか書いちゃうあたり・・・

レベル低そー。
0709nobodyさん03/05/23 13:17ID:???
>>708
そのへんはみんな見破ってるからいちいち指摘すんなって。
かわいそうだろ。
0710nobodyさん03/05/23 13:17ID:???
>>708
献立表にしたがってご飯食べてるって意味なんだよきっと
0711nobodyさん03/05/23 13:30ID:???
パ・パ・パパパ♪

パールライス(・∀・)
0712nobodyさん03/05/23 14:48ID:???
>>710
ワラタ
0713nobodyさん03/05/23 15:23ID:???
>699
Cで書け。
プログラムで食ってるなら書けるだろ?
Perlでやるより明らかに速いし負荷がかからないよ。
0714nobodyさん03/05/23 19:53ID:???
perlは「ペール」って発音するんだよ
0715nobodyさん03/05/23 20:18ID:???
>>714
ポルトゲスだつだのかぁ。
0716nobodyさん03/05/23 20:51ID:hvFYfA6x
TomcatでCGIやっている人いる?
0717nobodyさん03/05/23 21:46ID:???
一般的に使われている二文字の漢字が侮ヲという字に化けてしまいます(・ω・)
0718nobodyさん03/05/23 22:16ID:???
>717
だからなに?
えらいねーってほめて欲しいのかな、ボク?
0719nobodyさん03/05/23 22:58ID:???
>>717
おお、それは画期的な発見だな!
0720nobodyさん03/05/23 23:58ID:???
>>717
すげー!そのテクニックは企業秘密?やはり教えてはもらえんのだろうか。
0721 ◆dq7M./4Uw. 03/05/24 01:05ID:???
>>717
やべぇ、気付かなかったよ!ありがとう!\
0722nobodyさん03/05/24 01:57ID:???
txtでなんか書きますね。
拡張子をcgiに変えますね。
どうやって開くんですか?てんで初心者で。
教えてください。お願いします。
0723nobodyさん03/05/24 02:12ID:???
>>722
書いたソフトででもいいでしょ
0724nobodyさん03/05/24 02:13ID:???
>>722
日本語での質問が無理なんだったら母国語で書いてもいいですよ。
0725nobodyさん03/05/24 04:59ID:???
「日本語が通じないようなのですが…英語の方が通じますか? 」
ttp://www.geocities.co.jp/SiliconValley/5656/#20030402-1
0726nobodyさん03/05/24 07:55ID:U+LFnLJJ
http://falcon.s16.xrea.com/
上の画像UP設置したいけどやりかたがわかりません。
@niftyなんで・・・
0727nobodyさん03/05/24 08:11ID:???
( ´_ゝ`)フーン
0728nobodyさん03/05/24 09:31ID:???
大手プロバイダを使ってる時点で、CGIを自由に使いこなすことはあきらめたほうが
いいと思われ。
0729nobodyさん03/05/24 10:12ID:s437kJfj
(・∀・)イイ懸賞サイト、お小遣いサイトをピックアップして紹介しています
月に1万円以上は稼げそうにないけど、4000円ぐらいなら稼げそうです
無料登録するだけで商品券が貰えるサイトなども載せてあります
http://f15.aaacafe.ne.jp/~suikas/present.html
0730nobodyさん03/05/24 23:36ID:???
>>726
@niftyはそもそもCGIを設置できたのか?
まあ、調べる気にもならんが。
0731nobodyさん03/05/24 23:57ID:ifKVZv+d
PCと携帯を振り分けるCGIをつかってるんだけどそれだとindex.htmlに置けないから困ってます
index.htmlにCGIを埋め込めるHTML(携帯からでも読み込めるタグ)ってありませんかねぇ?
グーグル先生に聞いたけど出ない
0732nobodyさん03/05/25 00:10ID:???
>>731
無理。
0733nobodyさん03/05/25 00:28ID:Os0pVi9Q
>732
なんで無理なん?
0734nobodyさん03/05/25 00:36ID:???
>>731
そんな夢のような「タグ」は存在しない。
つかお前はHTMLをなんだと思ってやがりますか。

http://hoge.ne.jp/~hoge/
こんな風に、URLの末尾をディレクトリにしてアクセスした時に、
PCと携帯を振り分けたいのであれば、方法はいくらでもあるが、
>>731程度の認識と知識ではどれも不可能だろう。

>>732は途中をかなりすっ飛ばしているが、結論だけは正しいな。
0735nobodyさん03/05/25 00:51ID:Os0pVi9Q
>734
http://hoge.ne.jp/~hoge/
こんな風に、URLの末尾をディレクトリにしてアクセスした時に、
PCと携帯を振り分けたいのであれば、方法はいくらでもある


それがやりたいんだw
0736nobodyさん03/05/25 00:58ID:Os0pVi9Q
>734
頼むからそれ教えて!
さっきからCGI失敗しまくりだから・・・
0737_03/05/25 01:03ID:???
http://homepage.mac.com/hiroyuki43/
0738サンプルです03/05/25 01:05ID:qXE1ysu+
☆オススメ! カワイイ女の子満載のHサイト☆ 〜二日間だけ無料です〜
http://yahooo.s2.x-beat.com/linkvp/linkvp.html
0739nobodyさん03/05/25 01:46ID:???
index.htm を index.cgi にする。
0740nobodyさん03/05/25 02:22ID:???
>>739
その書き方は分かってる奴ならいいが、そうじゃないと文面どおり解釈されかねないぞ。
(index.htmlをindex.cgiにリネーム→アップロード→動かない!)
0741nobodyさん03/05/25 02:34ID:???
DirectoryIndex 該当するファイル名

example.(com|net|org) 使ってあげなさいよ。RFC 2606
0742nobodyさん03/05/25 04:34ID:???
SSI使えばいいじゃん。
074369903/05/25 06:54ID:???
http://afk.s31.xrea.com/
一応はこれです。ぜんぜんだめ?
0744nobodyさん03/05/25 10:40ID:hi9lch0f
アップローダの作り方おしえて
0745nobodyさん03/05/25 10:45ID:???
>>744
教えてできるものじゃありません。
0746nobodyさん03/05/25 11:20ID:j5yBhsq1
DirectoryIndex 該当するファイル名
って.htaccessに書くんだよね?その書いた.htaccessファイルってどこにうpすればいいんだっけ?
0747nobodyさん03/05/25 11:26ID:kaO8yXyX
ページを開こうとするとパスワードを入力せよと言うのがでて
正解か不正解によって2つのページに飛ぶ、といったようなものを
つくるにはどうしたらいいでしょうか
0748nobodyさん03/05/25 11:31ID:???
>>746
有効にしたいディレクトリ。

>>747
「どうしたらいいか」という言葉が、どの程度までの情報を求めているのか分からんので
答えようがない。もうちょっと詳細によろしく。
0749nobodyさん03/05/25 11:37ID:kaO8yXyX
cgiの全文、またはそれに相当するものが掲載されているサイトのURL
2時間くらい探したけれど見つからなかったので
075074603/05/25 11:43ID:j5yBhsq1
該当するファイル名は絶対パスでもいいんかな?
0751nobodyさん03/05/25 11:50ID:???
>>749
「つくる」って、CGIの設置のことかよ。
このスレでつくるっていったらコーディングとかアルゴリズムと思うじゃないか……

その手のCGIはけっこう配布されてるから、探せばすぐ見つかるぞ。
075274903/05/25 12:03ID:kaO8yXyX
>>751
探してみます
0753nobodyさん03/05/25 12:09ID:???
あれっ!昨日頼んだのにもう来てる本当に安かったのでびっくりしました


http://ime.nu/ime.nu/ime.nu/www.net-de-dvd.com/
0754nobodyさん03/05/25 12:12ID:???
>>750
例 DirectoryIndex index.cgi index.html index.htm

ファイル名をつけないURLでアクセスした場合、そのディレクトリの
中から上記の左から順に探して見つかったファイルを表示する。

つーか、もう答えを教わってるんだから書き方ぐらい調べれ。
0755nobodyさん03/05/25 12:14ID:Jgr8OJqO
アダルトDVDが800円〜!!
http://www.dvd-yuis.com/
最速発送!すぐ届く!!
http://www.dvd-yuis.com/
女性も安心!秘密厳守!!
http://www.dvd-yuis.com/
おっ!安い!買っちゃお!
http://www.dvd-yuis.com/
えっ!?もう届いたの?
http://www.dvd-yuis.com/
0756nobodyさん03/05/25 12:16ID:9EnXV42Y
終わった言語
0757nobodyさん03/05/25 13:01ID:???
>>756
俺もそう思う。CGIはすでに過去の言語。
CGIみたいな汚い言語は駆逐されて当然。
0758nobodyさん03/05/25 13:12ID:???
あの〜、CGIって言語じゃないんですが
0759nobodyさん03/05/25 13:17ID:???
>>758
釣られんなよ
07601003/05/25 13:39ID:???
得点ランキングを記述するデータを改造したいのですがおしえてください
●やりたいことは、全角(ひらがな、カタカナ)で記述した場合の文字化け対策
データを記述したときに更新をおしたら連続書き込みしてしまうのを連続書き込みしないように
したいのですがソースは下記にのせます。
初心者でもうしわけないのですがアドバイスお願いします
07611003/05/25 13:41ID:???
#!/usr/bin/perl

# CGIスクリプトから見たベースとなるディレクトリ
$base = "./ranking";

require 'cgi-lib.pl';
require 'jcode.pl';

$title = "ランキング";# ウィンドウタイトル
$data = "ranking.dat";# データベースファイル
$dispranking = 10;# 表示したい上位ランキング数

# ヘッダー出力
print "Content-type: text/html;charset=Shift_JIS\n\n<html><head><title>$title</title></head><body bgcolor=\"FFffFF\">\n";
# 入力データの解析
&ReadParse(*in);
$score = $in{'score'};
$name = $in{'name'};

&jcode'convert(*name, 'jis');
07621003/05/25 13:42ID:???
# ランキング抹消コマンド
if(@ARGV[0] eq "clear"){
open(FILE, "> $data");
print "\n";
close(FILE);
exit(0);
}

# データベースのデータを読み込む
open(FILE, "<$data") || &ferror();
while(<FILE>){
chop;
@v = split(/\t/);
$mscore[++$#mscore] = @v[0];
$mname[$#mscore] = @v[1];
}
close(FILE);
07631003/05/25 13:43ID:???
} else {
$index = -1;
}

# スコアをデータを表示
print "<center><h2><b>最新スコア</b></h2>";
print "<table border=1>\n";
open(FILE, "<$data");
$count = 1;
while(<FILE>){
# last if $count == $dispranking + 1; <- これを有効にすると上位5位のみ表示
# 順番を表示
print "<tr><td>$count</td>";
chop;
@v = split(/\t/);
if($count++ == $index){
# たった今入力されたスコアは色を変えて表示
print "<td><font color=red>@v[0]</font></td>";
print "<td><font color=red>@v[1]</font></td>";
} else {
print "<td>@v[0]</td><td>@v[1]</td>";
}
print "</tr>\n";
}
close(FILE);
print "</table></center>\n";
print "</body></html>\n";
07641003/05/25 13:44ID:???
# エラー表示して終了
sub ferror {
local($file) = @_;
print "<center><h1>$title<br>\n";
print "ファイルが開けません<br></h1></center>\n";
exit(0);
}
長くコピペして申し訳ありませんでした。
職人さま教えてください。お願いしますm(__)m
0765nobodyさん03/05/25 13:54ID:???
文字化けは コレじゃないかな。
&jcode'convert(*name, 'jis');
連投は面倒なので>>765がやってくれるはず
■ このスレッドは過去ログ倉庫に格納されています