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

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

■ このスレッドは過去ログ倉庫に格納されています
0001ななし ◆E6qQ.htN7o 03/01/03 02:56ID:H5ub4PWW
CGIの運用に関する質問スレッドです。

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

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

過去ログ・関連スレッドは >>2-5 あたりに
0016nobodyさん03/01/06 07:41ID:abYGXX0G
オフラインで、フォルダの中にtako.html と hoge.exe があるとします
hoge.exe はHTMLを吐く実行ファイルで、tako.html には以下のフォームが入っています。
<HTML>
<FORM ACTION="file:///C:/home/Programing/EPA4Bunkai/Text2IPA.exe">
<INPUT TYPE="submit" VALUE="ボタン">
</FORM>
</HTML>

ボタンを押したら、hoge.exe の吐いたHTMLを表示させたいのですが、
上記の条件だと、ファイルのダウンロードになってしまいます。
やはり、Apache などを走らせてないと駄目なのでしょうか?
0017nobodyさん03/01/06 12:23ID:???
>>16
あたりまえだろ。
そんなんで実行できたら、セキュリティーホールに使われるって。
0018nobodyさん03/01/06 13:14ID:JhCfMZHJ
ネットスケープ6を使ってやりたいのですが、UTFの文字コードをEUCに
PERLのプログラムで変換する方法を教えてください。
具体的には
・変数にUTFの文字コードを代入
      ↓
・その変数をEUCに変換
とやりたいのですがどのようにやったらよいのでしょうか?
どなたかよろしくおねがいします。
00191803/01/06 16:13ID:vFPYY9M3
度々すいません。UTF8の文字コードを$optionにいれているのですが
今調べて
$option =~ tr/+/ /;
$option =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg;
&jcode'convert(*option,"euc");
とやってみたのですが$optionを表示させると???????となってしまいます。

どうしたらよいのでしょうか?
0020nobodyさん03/01/06 16:50ID:8Wd4rwQY
コンピュータにもお前の意思が意味不明だってことだよ。
0021nobodyさん03/01/06 17:33ID:???
というか、コンピュータは言われた通りのことをやっている。
問題ない。
0022nobodyさん03/01/06 20:01ID:???
>>19
jcode.plにはunicode系の変換機能はありません。
jcode.pmで変換できますが、サーバサイドのPerlが実装している必要があります。

utf8<=>eucの変換テーブルを用意して
1文字1文字変換していくルーチンを自作するか
適当なサイトにあるルーチンを借用してくださいませ。。
0023nobodyさん03/01/06 20:01ID:8Wd4rwQY
まず、jcode.pl でやろうとしているんだろうけど
UTF8を扱えるか調べてみろ。
0024nobodyさん03/01/06 21:16ID:???
探してみたらありましたYO
実際に使用していませんのであしからず。。

ttp://www.onicos.com/staff/iz/release/#unicodepl
0025nobodyさん 03/01/07 00:38ID:???
apache2でCGI経由でnewaliasesしたいけど、suEXECするのが妥当?
他に方法あれば教えてくださいませ。
0026nobodyさん03/01/07 15:20ID:???
SUBMITボタンを押すたびに画像を変えるCGI作ってるけど
ブラウザの画像が変わらない。
CGI側からキャッシュを消す方法って無いの?
0027nobodyさん03/01/07 16:20ID:???
>>16
0028nobodyさん03/01/07 17:17ID:???
>>25
suEXECするってのは・・・セキュリティを高めたいって事だよね?
自鯖であればセキュアにできるならするべきだYO

>>26
クライアントのキャッシュを明示して削除する方法は知りませんけれど・・・
htmlからそのCGIを呼び出しているのなら no-cache指定とか。。
フォーム自身もCGIから出力しているのなら
<img src="hogehoge.jpg?$^T$$">
のように?$^T$$でも追加しておけば
CGI起動時刻とプロセスIDでユニークなURLになり
キャッシュは存在しなくなります。。

他にも色々方法はありますYO

>>27
ほげほげ

0029nobodyさん03/01/07 18:23ID:23SRPWxk
jcode.plを使わずにsjis文字をeucに変換することってできますか?
正規表現とかで。
0030nobodyさん03/01/07 18:33ID:???
jcodeでやってることを書くだけ。
車輪。
00312903/01/07 18:42ID:23SRPWxk
>>30
そうしかなさそうですね。
0032nobodyさん03/01/07 19:39ID:E9xJzpX+
>>31
無さそう、、っていうか、ShiftJISとEUC-JPは、ずらしただけだから、
お勉強すれば簡単に作れると思うんだけど・・
0033nobodyさん03/01/07 22:48ID:???
リンク先へ飛ばす際、
リファを取られていても問題の無いように
一旦ダミーの足場を踏まえさせるスクリプトってないでしょうか?
0034nobodyさん03/01/07 22:55ID:???
http://ime.nu/
00353303/01/08 04:33ID:???
>>34
えと、それですか?
00363303/01/08 05:18ID:???
あ なるほど、分かりました。
ありがとうございます。
00373303/01/08 05:39ID:???
続きで申し訳ないのですが、
これと同じようなことが出来るスクリプトは無いものでしょうか?
足場を手前で用意したいもので・・・
0038nobodyさん03/01/08 08:57ID:???
>37
作るの自体難しくないから、誰も配布してないだろうね。
perlなら10行程度でできるし。
Locationで調べてみ。
0039nobodyさん03/01/08 11:09ID:QcH5iWUE
Perlで変数どうしをくっつけたい場合はどうすれば良いのでしょうか?

例えば
$name に "あああ"が入ってて
$num に "111"が入ってるとき

$info に "あああ:111"といれたいときはどうすれば良いのでしょうか?
$info = "$name"+":"+"$num"とやれば良いのでしょうか?
0040age03/01/08 11:39ID:???
やってみれば〜?
00413303/01/08 11:52ID:???
>>38
申し訳ありあせん、
自作しようとしたのですがどうしてもダメです。

ご教授願えないでしょうか?
0042nobodyさん03/01/08 12:10ID:43qqwvSV
cgiを設置したのですが、IEのステータスバーに
「実行しましたが、ページでエラーが発生しました」と出ます
cgi自体は問題なく動いているようなのですが…
IEのスクリプトエラーを表示するをONにしてどこが間違っているのか
チェックしたら、

計画番号設置の
$×× = 19; # (この文の内容)
というところにエラーがあると出ました。
この行の19文字目?が違うらしいのですが、
19文字目は「;」になります…
どうしたらこのエラー表示が回避できるようになるのでしょうか?

00432603/01/08 13:25ID:???
>>28
ローカルのキャッシュ容量が大変なことになるけど
ちゃんと描画できたよ。
ありがとね。
0044名無しさん@お腹いっぱい。03/01/08 14:12ID:???
>>39
.を使え。

>>42
根本的に勘違いしていると思う。
0045nobodyさん03/01/08 14:16ID:43qqwvSV
>>44
どう勘違いしてるでしょうか?
どうか教えてください
0046nobodyさん03/01/08 14:35ID:???
>>45
JavaスクリプトやVBスクリプトのエラーだろ。
0047nobodyさん03/01/08 14:36ID:???
>>39
場合によっては.よりもsprintfの方がいいかも。
0048nobodyさん03/01/08 15:01ID:43qqwvSV
>>46
そうなんですか・・・?
エラーの出たファイルのところにこのcgiの名前があったので・・・
ここでJavaScriptのこと聞いてもいいのかな・・・?
ダメだったらスルーして下さい
JavaScriptエラーってどうやったら修復できるのでしょうか・・・
00493303/01/09 01:21ID:???
>>38
解決しました。
ありがとうございました。
0050nobodyさん03/01/09 15:25ID:???
>>48
コードを修正する。何をあたりまえな。
0051nobodyさん03/01/09 18:17ID:???
CGIから、アクセスしてるユーザのIEのお気に入りの中身を調べることは不可能ですか?
どうにかしてCGIにデータを渡したいんですけど・・。
0052nobodyさん03/01/09 18:48ID:???
>>51
不可能
0053nobodyさん03/01/09 23:31ID:???
それをやられたら泣くだろ
だからねえんだYO!

blinkのやり方はActiveXぽいな。使ったことねえから詳しくしらないが。
0054nobodyさん03/01/10 14:00ID:???
>>53
DynamicHTMLで普通にできそうな予感。
0055nobodyさん03/01/10 22:50ID:???
>>51
そんなプライバシーに関わるデータ抜き取って何しようっての?
発想が厨なんだよ。
ちったあ相手の身になって考えてみろっての。
0056nobodyさん03/01/13 22:11ID:tF1UpiEy
htmlファイルが読み込まれる時に同時にcgiを実行させたいのですが、どうすればよいのでしょう。
とりあえず考えたのはcgiから何か画像を出力させて、<img src="hoge.cgi">なのですが、
実行させるためだけにわざわざ画像を表示させるのはなんか変な感じがします。
何かスマートな方法は無いでしょうか。
0057nobodyさん03/01/13 22:15ID:???
>>56
SSI
0058nobodyさん03/01/13 23:00ID:???
>>56
SSI使えないなら
<IFRAME SRC="hoge.cgi" WIDTH="0" HEIGHT="0">
</IFRAME>
とかでもいいかもね
0059nobodyさん03/01/14 02:13ID:???
>>56
そのCGIからHTML出力させろ。
0060nobodyさん03/01/14 16:51ID:???
>>58
IE限定&IMGの3倍大げさ。
0061nobodyさん03/01/14 20:38ID:???
>>60
ネスケでも6以上ならIFRAMEに対応している。
そういう俺は4.78だけど。。。
0062nobodyさん03/01/14 21:28ID:???
ブラウザ依存のHTML吐き出すようなスクリプトは糞
0063nobodyさん03/01/15 00:54ID:???
HTMLの仕様に準拠していないUAは糞?
0064nobodyさん03/01/15 09:49ID:bv4lo3d6
レンタルサーバ内のplaintextデータ等をバックアップする場合、
何か良いは方法ないでしょうか。
例えば会員データとかで、住所とか名前が入ってるものをメールでそのまま
送るなんて事できないし、圧縮してメール添付ってのも危険ですしね。
専用サーバ借りているのですが、su貰えない&telnet使用可ですが、
固定IP必要なので実質使えないので、CGIで代わりにTELNETモドキやってる程度。
bdesが良いらしいが入ってない。
何か良い方法をご存知の方いましたらRESPLZ。
00656403/01/15 09:59ID:???
でかいファイルでもperlのcryptでOKかな。やってみよう。
00666403/01/15 10:01ID:???
と、思ったけど、デコードできんか...........一人カキコスマン
0067nobodyさん03/01/15 10:25ID:???
>>64
何でメールするん?
FTPで自分のパソにダウンロードすればいいだけの話では。
0068nobodyさん03/01/15 10:59ID:wVEDeB5S
perlスレでcgiに行けといわれたので、こちらにきました。

管理人(私)だけが項目を設定し、来訪者に投票してもらう
という投票・ランキングcgiを設置しようと出来合いの探したところ
項目が140あるので検索機能がついたvote.cgiを探したところ、
ttp://www.c-5.ne.jp/~hamachan/cgihtm/jiten.htm
上記↑で配布されている「簡易データーベース」というものにたどり着きました。
プログラムが古いので
require './jcode.pl';
#-----------------------------------------------------------------
↑これの次の行に↓この一行を追加しました。
open STDOUT, '>-';
jcode.plも新しいバージョンに変えて、説明書きにあったとおり
「ずっこけ物知り辞典」という表示がページに出るところまでは
うまくいったのですが、実際に登録・検索しようとすると、
「ページが見つかりません」、との表示が出ます。
ちなみに、Tripodを使っています。

FTPソフトで見ると、cgi-binフォルダの中に
jiten.cgi、jcode.pl、jiten.docが入っていますが
jiten.docのファイルサイズは0になっています。
count.docファイルは生成されていないようです。

perlスレでTripodではcgi-binフォルダ以下に画像などの
ファイルは置けないとなっているから、とのレスをいただきましたが、
ttp://www.tripod.co.jp/guides/cgi.html
の中頃少し上をみると、スクリプトによって、使用されるHTMLファイルや
テキストファイルは、すべてcgi-binの中にある必要があります、とあるので
これは関係ないかと思いました。

どこをどう改善すればよいのか、ご指導よろしくお願いします。
0069nobodyさん03/01/15 11:25ID:???
>>68
単に
$url_pass = "http://www.hoihoi.ne.jp/~foo/jiten/jiten.cgi";

を自分のURLに設定していないだけなんじゃ・・・
00706403/01/15 11:56ID:???
>>67 毎日、簡単にバックアップしたいので。
FTPでも暗号化しないと、hackされる可能性がある気がするのですが・・・・・。

ネットワーク上で盗用されない為にも、サーバでファイルを暗号化し、
他サーバにコピーが理想。
大したファイルじゃないけど”もしも”の事を考慮してしまう今日この頃。
だんだんCGIと関係ない方向に向かってるかな.....
0071nobodyさん03/01/15 13:14ID:???
>>70
誰がhackすんの?
こういうのに限って、データファイルをドキュメントルート以下に置いてたりするんだよな。
0072山崎渉03/01/15 13:32ID:???
(^^)
00736403/01/15 16:27ID:???
>>71 はぁ。
0074nobodyさん03/01/15 17:02ID:???
CGIしか使えないならCGIで処理するしかないだろうなぁ。
CPANあたりにある暗号化のを使って自分で作るのがいいんじゃない?
需要なさそうだしその辺に転がってるCGIじゃ見つからないと思うよ。
0075nobodyさん03/01/17 20:16ID:???
CGIの内部で画像ファイルを作って出力しようと思っているのですけど、
そのCGIの名前が makepng.cgi という名前だとブラウザからDLしようと
するときの名前がnamepng.cgi.pngという名前になってしまいます。
# 手で書き換えればいいのだけれど。
makepng.cgi?foo=1&bar=x のときにはダウンロードするときの名前を
giko01x.png のようにCGI側で調整してやる方法ってありますか?
ブラウザはIEのみと考えてもいいです。
0076nobodyさん03/01/17 21:57ID:UZGmf3mg
>>75
直接ブラウザに画像データを送ったらファイル名はつけられない。
いったんサーバ側に画像ファイルとして保存してからならなんとかなるでしょう。
0077nobodyさん03/01/17 23:02ID:???
なるほど、了解しました。
0078nobodyさん03/01/18 00:23ID:O9FxKTGG
来客者は書き込めるが、他の来客者が書いたものは見られないようなcgiってありますか?
00797803/01/18 00:24ID:O9FxKTGG
追記

当然管理人は見られます。
管理人以外が過去の書き込みが見られないようなゲストブックみたいなやつがほしいんです。
0080nobodyさん03/01/18 00:37ID:???
>>78
メールじゃダメなのか?
0081nobodyさん03/01/18 22:36ID:vrB72zE5
http://www.ruby-lang.org/ja/man-1.6/?cmd=view;name=%A4%CF%A4%B8%A4%E1%A4%CB
↑このサイトですけど、URLが hoge.cgi?〜 見たいになってなくて、
スラッシュの次にいきなり?になってます。
これってどうなってるの?
0082nobodyさん03/01/18 23:28ID:???
掲示板CGIの中に別プログラムのCGIを挿入したいのですが、
掲示板CGIのHTMLスペース内にSSIを入れて実行しても
そのままタグが表示されてしまいます。

どのようしたらよいのか教えてください。
0083超シロウト03/01/18 23:47ID:ovwKqnQ9
ほんと申し訳ないのですが、
public_htmlと同じ断層にフォルダを作った時、そのパスは
どのように書いたら良いんですか?
.../.../.../フォルダ/
これでいいのかな?
0084nobodyさん03/01/18 23:53ID:???
>>83
相対パスで良いなら./
0085nobodyさん03/01/18 23:54ID:vrB72zE5
>>83
public_htmlを基準にするなら、
../フォルダ
じゃない?
0086nobodyさん03/01/18 23:55ID:???
>>83
相対パスなら./public_htmlまでのパス/../フォルダ/
だと思うけど
0087nobodyさん03/01/18 23:57ID:???
>>86
お帰り下さい。
0088nobodyさん03/01/19 00:02ID:ZcFFkCZZ
おまけ:

. =>ディレクトリ自身へのリンク
.. =>親ディレクトリへのリンク

先頭が/でなければ、それはカレントディレクトリからの相対パスとみなされる。
0089nobodyさん03/01/19 00:04ID:???
>>88
DOS6なら...とか..........とかも可能だったりする。
0090nobodyさん03/01/19 00:06ID:???
ほぉ・・知らんだ。あ。リンクっていうのは、正確には、ハードリンク。
0091nobodyさん03/01/19 00:07ID:???
>>90
つぅことは..を削除したりなんかしたら親御さんがいなくなってしまうのか。
0092nobodyさん03/01/19 00:19ID:???
ディレクトリ、というファイルの実体が削除されるときは、リンクカウンタが0になった時。
なので、..を消しただけでは消えないはず。

だけど、rmとかの普通のコマンドは、消すことを許可しない、から、普通には消せない
0093nobodyさん03/01/19 00:47ID:???
>>82
print `betu.cgi`;
0094nobodyさん03/01/19 01:17ID:???
>>81
index.cgi
0095nobodyさん03/01/19 06:53ID:???
>82
SSIではなく、ちゃんとスクリプト内に組み込みなさい。
普通SSIの使える拡張子は限られてるだろ。
0096nobodyさん03/01/22 22:36ID:/vlxGamR
webpowerのディレクトリゲイト、下記(サポ板)の質問にもあるように
携帯(J-PHONE)からアクセスすると認証後に飛べないようなんですが
どうしたら良いのでしょうか。
ttp://rank.nu/~wpis/bbs/support/bbs.cgi?mode=view;Code=154
上記で丁度同様の質問が出ていたのですが12月から回答がついてないみたいで…
0097nobodyさん03/01/23 05:02ID:???
ブラウザの履歴を調べる方法はないですか?
window.historyで「進む」「戻る」の実行はできますが、ページを移動せずに
そのURLが知りたいんです。
0098nobodyさん03/01/23 11:11ID:???
>>97
ブラウザがその情報を渡してくれなければどうしようもないだろ。
0099nobodyさん03/01/25 01:03ID:???
質問なのであげます。

apeboard+ で何行も改行するにはどうしたらいいのでしょうか。








こんなふうに。

スキン内のスタイルシートの制限は外したのですが…。
0100nobodyさん03/01/25 10:17ID:???
>>99
曽根。
0101nobodyさん03/01/25 10:32ID:A7yEoEyG
ファイルを書き込み中に、そのファイルを読み込むプロセスが発生したとしても、
ファイルの読み込みの成否はともかくとして、ファイルの書き込みは成功して、ファイル自体が壊れることはないのでしょうか?
0102nobodyさん03/01/25 10:38ID:???
>>101
データ書き込み中に読み込みなら書き込みは成功するはずです。

どっちにしろflockは必須と考えた方が幸せです。
010310103/01/25 10:51ID:A7yEoEyG
ありがとうございます。
ファイルの読み込みが、次に行うかもしれない書き込みに影響しないのであれば、
ファイルの読み込み自体はflockの手順を介さなくても平気なんですね
0104nobodyさん03/01/25 10:52ID:???
>>103
必須の意味を考えながら腕立て200回。
010510103/01/25 11:05ID:A7yEoEyG
わっ、そうですね‥
102の末尾に
そうでなければ、介すべき、仕様が明確に決まってなければ、介すべきといった感じなのでしょうか??
という具合ですかね
010610103/01/25 11:19ID:A7yEoEyG
じゃなっくっっーーてェーー
103だ103。
0107ここは?03/01/25 12:01ID:P9onD8CE
http://homepage3.nifty.com/digikei/ten.html
(*~ー゜)ノ ・・・・・心温まるの〜
0108nobodyさん03/01/25 12:29ID:???
書き込みが成功したとしても、後から読み込んだプロセスが(中途半端な)上書きをして
データがごっそり抜けることになる。
図入りで説明してるページも多いから調べてみそ。
0109nobodyさん03/01/25 12:59ID:2kNMQnUp
今PealでBBS作ってるんですが、
ログを保存するのに、1件につき1ファイルが良いのか
1つのファイルに詰め込んでいく方が良いのか・・・。
後者だとすれば何件くらいを目安にすれば良いのやら。。
と、悩んでます。

一体皆さんはどういう感じでつくっているのでしょう?
お奨めなやり方などがあれば教えていただけると嬉しいのですが。
おながいします。
0110nobodyさん03/01/25 13:01ID:???
>>109
>1件につき1ファイル
追加、編集、削除が容易だがどうやって検索するかが問題になってくる。まぁ、簡単と言えば簡単。

>1つのファイルに詰め込んでいく
ファイルをだだ読みすればいいので検索性は良い。しかし追加、編集、削除が面倒。まぁ、簡単と言えば簡単。

どっちにもメリットデメリットがあるのでお好きな方を。と。
011110903/01/25 13:10ID:???
>>110
了解しました。
しばらくは両方使ってみて
自分の好みの方にしてみます。
ありがとでした!
0112nobodyさん03/01/25 16:14ID:???
flockなんか使ってる香具師いるの?
0113nobodyさん03/01/25 16:15ID:???
>>112
(・Д・)?
0114nobodyさん03/01/25 17:20ID:J+PAIJA/
1ファイル1000個くらい詰めた方が効率がよろしい。ので

1ファイルに詰め込むんじゃなくて、1000個づつに分割したらどうかね
0115nobodyさん03/01/25 17:51ID:???
>>114
検索はしやすそうだけど
編集、削除はやっぱり面倒じゃないか?
追加は>>で追記してけば問題なさげ。

1ファイル1投稿だと排他あまり考えなくていいし
最悪トンでも1メッセージだけ。
検索しないなら1ファイルに1投稿が確実。(検索もできなくはない
編集、削除しないなら1ファイルへ数件詰め込めば検索楽。
0116nobodyさん03/01/25 18:02ID:???
>>112
しょっちゅう使っていますがなにか?
■ このスレッドは過去ログ倉庫に格納されています