【Perl】初心者コーナー Part15
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
02/08/08 23:19ID:???1:自分はこう言う事がしたい。
2:それでこんな風にやってみたが・・・
3:それだとこんなエラーが出て上手く行かなかった。
1と3が無いと誰も答えられないよ。
良い回答は良い質問から。一緒に勉強しましょう。
CGIだけど、なんか質問ある? Part 6 (その2)
http://pc.2ch.net/test/read.cgi/php/1025930486/
参考書籍の話題は【【Perl,CGI】参考書籍 第2版】
http://pc.2ch.net/test/read.cgi/php/988809842/
その他の雑多な話題は、【CGIに依存しないPerlの話題一般】
http://pc.2ch.net/test/read.cgi/php/991313362/
スクリプトの改造依頼は 【スクリプト改造工房 Part4】
http://pc.2ch.net/test/read.cgi/php/1012839651/
過去ログ、その他の役立ち情報は>>2-10あたりを見よう。
0159nobodyさん
02/08/14 23:35ID:???$a = 1 << 2 としてみました
00000100 になると思ってたんですが
unpack("B*",$a) としてみたら
00110100 となっていました
上4ビットはなんなんですか
0162156=154=152
02/08/15 01:27ID:5Zkc/vw2EUCに変換して解決しました。
ありがとうございました。
>>158
分かりやすい解説ありがとうございます。
勉強します。
152の問題も解決しました。
スクリプトは見つかりませんでしたが、
Content-type: multipart/alternative;boundary="--- ・・・
を付けて、テキスト部分とHTML部分を区切るだけで出来ました。
ありがとうございました。
0163↓晒しヽ(`Д´)ノアゲー
02/08/15 02:47ID:???http://rating.auctions.yahoo.co.jp/jp/show/rating?userID=hidekurokawa&filter=-1
評価: 非常に悪い 落札者です。評価者は manaboon2001 (21)
IBM Deskstar ATA100/60GB 7200rpm 送料込み!! (6月 9日 23時 14分)
出品者は「 非常に悪い 」と落札者を評価しました。
コメント:取引終了後、1週間のうち私から3度メールでご案内しても何も返事がありませんでした。
お前はブラックリスト入りだ!! (6月 15日 23時 7分) (最新)
評価: 非常に悪い 落札者です。評価者は goodnanews (2)
デジタルミキサー Fostex VM04 (11月 11日 5時 49分)
出品者は「 非常に悪い 」と落札者を評価しました。
コメント:一方的な理由でキャンセルされました。自分が落札した商品には責任を持って対処してください。 (11月 14日 12時 36分) (最新)
評価: 悪い 落札者です。評価者は gtak55 (42)
FOSTEX☆MN06☆6チャンネルミキサー (10月 17日 5時 9分)
出品者は「 悪い 」と落札者を評価しました。
コメント:キャンセルの理由が納得いきません。落札したものはどんな理由があれ責任を持って購入すべきではないでしょうか?
(10月 18日 23時 48分) (最新)
評価: 非常に悪い 落札者です。評価者は hiroalive2000 (35)
定価98000円のスーパーリズムマシンプラス・メモリー9800円あわせて12000円即決 (9月 19日 2時 23分)
出品者は「 非常に悪い 」と落札者を評価しました。
コメント:最悪です。何度連絡してもメールくれません。完璧な無視です。多分オークション二酸化しないほうがいい人
ですからこんな人は注意してください。みなさん。 (9月 24日 19時 33分)
コメント:これかいたらすぐに返事がくるんですよ。こういうやつがふえてるんで・・・。
今まで完璧な無視してきたらこうかかれると私にしつこいとか言ってもんくつけるんですよ。すいそくですが・・・・
日ずけ見て下さったら皆さんわかると思います。 (9月 24日 19時 36分) (最新)
0164nanasi
02/08/15 04:12ID:???したいのですがどのようにしたら良いのでしょうか
0166nanasi
02/08/15 05:50ID:???http://www.cj-c.com/cgi_s/upb.htm (UPP BORD)
を設置してるのですがあっぷした画像のみを他サイトの掲示板で
転載されて困ってるので他サイトからあぷされた画像を閲覧した場合
自分のHPのTOPに飛ぶようにしたいのです。
あっぷされた画像直リンの場合弾きたいということです。
どうか方法教えてください
0167nobodyさん
02/08/15 11:08ID:???画像の直リンク防ぎたいなら .htaccess の出番かと
「.htaccess 画像 制限」 こんな感じのキーワードで
googleで検索すれば解説してるサイトみつかるべ。
これ以上はスレ違いなので、あとはご自分で・・・
0168エロ助
02/08/15 11:32ID:h1WzO6+xhttp://www.kemokemo.com/products/picchabo/picchabo203.lzh
上(掲示板CGI)に下(ランダム広告CGI※呼び出しによりSSI使用しない方)を設置したいのですが『インターネットサーバーエラー』になります。(;_;)
一通りパーミッション設定などを説明どうりやってみたのですが設置できないんです。。(;_;)なぜでしょう??(;_;)
どうか教えていただけないでしょうか。。(;_;)
また呼び出しのときの記述が『require 'rand.pl'; rand::main($Op1,$Op2,$Op3);』を記述しろと書いてあったので正確に記述したのですが『インターネットサーバーエラー』になってしまうんです。。(;_;)
『$buffer』でも記述したんですがだめでした。
http://taihei.cc/pc/cgis/random.html
http://taihei.cc/pc/cgis/randban11.lzh
0169nobodyさん
02/08/15 11:34ID:???0170nobodyさん
02/08/15 14:23ID:???縮小画像を生成したいんですが、
私の知っている方法ではroot権限の関係で共有スペースでは不可能なのですが
root権限の関係無しに縮小画像を生成する方法はありますか?
0171nobodyさん
02/08/15 15:09ID:???/ ̄ ̄ ̄ ̄ ̄ ミ
/ ,――――-ミ
/ / / \ |
| / ,(・) (・) |
(6 つ |
| ___ | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| /__/ / < HTMLでできるだろ!
/| /\ \__________
0172nobodyさん
02/08/15 15:33ID:???GDを使うといい。GD.pmで検索しる。
http://member.nifty.ne.jp/hippo2000/perltips/GD.html
0174アップローダを作り隊
02/08/15 18:04ID:OdAnllx3どうもわからんのです。
フリーのアップローダのソースを見ても掲示板とかが邪魔で
肝心のアップローダの仕組みがわからず。。。
perlのリファレンス本を何冊か読んでも、
何をアップローダに使えばわからず。。。
どうか皆様、この私にアップローダの「ア」の字くらいを教えてくださいませんでしょうか。
0175170
02/08/15 18:24ID:???3<>コメント
1<>コメント
ログファイルにこういう形で保存されいて
1 2 3の中のもっとも大きい数字を求めるにはどうすればいいのでしょうか?
0177170
02/08/15 18:40ID:???0178nobodyさん
02/08/15 18:44ID:???0179nobodyさん
02/08/15 19:04ID:???ゆいのーとの最初の方をみれば割と判るとおもう。
http://zurubon.strange-x.com/uploader/src/
調べるなら「Content-type: multipart/form-data」で。
http://www.tsden.org/ryutaroh/fileupload-j.shtml
0180アップローダを作り隊
02/08/15 19:52ID:OdAnllx3スマソ。やっぱりわからんです。
設定するところをして、CGI対応のサーバーにアップしたのですが、
ファイルサイズがやけに小さくなって、しかも開けず。
自分のPCにApache入れてるんですが、それでも同じ結果です。
他のアップローダーもファイルサイズが同じように小さくなります。
ちなみにJPGファイル。
対応してるはずなんですが。。。
アップローダー十個くらい試してみたのですが、全滅です。。。
設定がいけないんでしょか?
0182nobodyさん
02/08/15 20:01ID:???バグの原因が判らないなら3〜4種のブラウザで再現するかどうか見れ。
0183アップローダを作り隊
02/08/15 20:17ID:OdAnllx3http://ruffnex.oc.to/ipusiron/upload/1171.zip
↑一応ゆいのーとを使っているサイトにソースをアップしました。
最低限設定する必要がある部分など指摘していただけたら、と。
0184アップローダを作り隊
02/08/15 20:17ID:OdAnllx30185nobodyさん
02/08/15 20:49ID:???ちゃんと動くよ?(^^;
$url = 'http://www.hoge.com/~hoge/up/source.cgi';
$storeurl = 'http://www.hoge.com/~hoge/up/source/';
$counter_enable = 0;
source.cgi(755)とsourcelog.txt(777)とsource/(777)を置いてパーミッションを適当に。
妙な制限掛かってるんじゃない?
0186アップローダを作り隊
02/08/15 20:57ID:OdAnllx3そ。。。そうなんですか?
ちなみにスペース借りてるサーバーがWindows2000なんですが、
それも関係あるんでしょうか?
文字化けも激しいのですが。。。
0187nobodyさん
02/08/15 21:08ID:???0189アップローダを作り隊
02/08/15 21:24ID:OdAnllx3一応、いくつかファイルをアップした時の状態のものを晒しておきます。
何かこれからわかることがあったらよろしくです。
0190アップローダを作り隊
02/08/15 21:29ID:OdAnllx3もともとソースファイルを参考にして自分で作ろうと思ってるので、
できれば>>183のソースファイルの何行目あたりが大事だぞ、とかだけでも言っていただけないでしょか?
ほんと聞いてばかりですみませんです。
0192nobodyさん
02/08/16 00:02ID:???0193アップローダを作り隊
02/08/16 00:09ID:kDsvONdE今ソースファイルをわかり易く?まとめてるので、
binmodeを使うべきところがわかったら試してみようと思ってます。
使い方はわかったのですが、今までbinmodeというのは知らなかったので。。。
0194nobodyさん
02/08/16 01:13ID:???CGI.pmでもいいけど。
0195nobodyさん
02/08/16 14:48ID:???しょうか。普通:じゃないですか?
0198nobodyさん
02/08/16 17:45ID:gz1h7SNU:をエスケープしないで済むからだとおもわれ。
タグを許可しなければ<>が入力されてくることはないので都合がよい。
0199nobodyさん
02/08/16 18:53ID:???ていうかこれが普通だと思いこんでいたけど。
0200nobodyさん
02/08/16 20:57ID:???セパレータに2バイトも使うとは愚の骨頂ですね
\t ?? はつみみです
0201アップローダを作り隊=193
02/08/17 04:09ID:17AkwzDgそれならばと、書店に行って「大人のCGIスクリプト」という本を買って
そこに出ている「ホームページにファイルをアップロードする」というところを
参考にしました。
それで、とりあえず本に載っているソースをそのまま書いて試したのですが、
うまくいきません。…つД`)
もうどうしていいのかわからないのですが、
本に載ってたものをそのまま書いたソースファイルをアップしておきましたので、
もし見て何かわかることがありましたら、どうかお願いします。
http://ruffnex.oc.to/ipusiron/upload/1178.zip
状態として、CGI自体はエラーもなしに動くのですが、
ファイルがまったくアップロードされません。
1バイトもファイルが作られないので、何か決定的な間違えがあると思うのですが。。。
あと32行目当たりのコメントの後ろに「$bound =~ s/…」とあるのですが、(本がその通りに書いてあったので)
これは本来コメント部分なのか、それとも間違えてコメントの部分に書かれたものなのかがよくわかりません。
0202アップローダを作り隊=193
02/08/17 04:12ID:17AkwzDg本には”アップロードされたファイルは「./filepost/」というディレクトリに保存される。”
と書かれたありました。
0203nobodyさん
02/08/17 09:27ID:???0204アップローダを作り隊
02/08/17 10:12ID:17AkwzDgパーミッションは755ではダメですか?
CGIスクリプトからの書き込みとパーミッションって関係ないと思ってたのですが。。。
あと、前述したのですがNTサーバーなのでパーミッションが変更できないのです。
(NTサーバーだから変更できないわけじゃないかもしれませんが、借りてる鯖は変更できません)
やっぱりパーミッションは777がいいのでしょうか?
0205195
02/08/17 13:13ID:???CGIの流儀には詳しくないんだ。スマソ。
0206nobodyさん
02/08/17 13:20ID:???>> パーミッションは755ではダメですか?
>> CGIスクリプトからの書き込みとパーミッションって関係ないと思ってたのですが
ええと、不特定の人がファイルをうpするんですよね。うp = 書きこみですから、
ファイルを保存するディレクトリに誰でも書きこめるようにしておかないと駄目です
よ。755なら所有者しか書きこめません。
って、これはUNIX鯖の話で、NTのことは分かりません。でもパーミッションが変更で
きなかったら使いものにならないような気がしますが...
0207nobodyさん
02/08/17 14:19ID:???まずはここから ⇒ REQUEST_METHOD
0208207
02/08/17 14:28ID:???if ($ENV{'CONTENT_LENGTH'} > 5050000){exit;}
binmode(STDIN); # 追加
#ファイル名、区切り文字「バウンダリ」の取得
while (<STDIN>){
0209207
02/08/17 14:30ID:???binmode(OUT); # 追加
0210nobodyさん
02/08/17 16:09ID:???ランダムに並び換えて(シャッフルして)出力するにはどうすればいいですか?
0212アップローダを作れ隊
02/08/17 17:34ID:17AkwzDgで、で、で。。。できますた〜。つД`)
if ($ENV{'REQUESTMETHOD'} eq "POST")のところは
後で自分で気付いて「バカだな〜」と思ったのですが、
それ直しても全然できなくて。。。
バウンダリというものが、検索かけてもいまいちイメージがわかないのですが、
きっとそのうち自分で勉強して理解できるようになります!
本当にわざわざソース見て、指摘してくださってありがとうございます。
二日間ほとんど寝ずに頑張った甲斐がありました。
いつか初心者コーナーで答えられるようになって帰ってきます。
本当にありがとうございました。
>>206
NT鯖がどうなのかよくわからなかったのですが、
パーミッション755で無事アップロードできました。
そもそもパーミッションってあるのかな?っと思いました。
0213nobodyさん
02/08/17 17:42ID:???案外、これが重要だったりする。
0214???
02/08/17 18:07ID:mpsXRracサイトなどを見ながら、cgiの勉強しはじめたんです。
で、何か、perlを落として来いって書いてるんですけど、
perlをダウンロードしようと思ったら、
xpのところが「No additional requirements」って書いてて、
落とせないんですが、
どれを落とせばいいのでしょうか?
0215???
02/08/17 18:10ID:mpsXRracんで、落とそうとしたサイトが、
有名なんでしょうが、一応書いとくと、
http://www.activestate.com/Products/Download/Get.plex?id=ActivePerl&_x=1
です。。。
0216nobodyさん
02/08/17 18:16ID:Jdg3+PCYよし↑とりあえずこれいれろ5.8な、
、、んでだActivePerlのそれはインストーラーがうまくいかないOSは
パッチあててねって意味。2000/XPには必要ねーよってこと
0217nobodyさん
02/08/17 18:20ID:???↑、どこでダウソするんだろうな?
有名も糞もなにもここにいるWin厨はみんなActivePerlだろう。
最近はネトランも付録CDにつけてるからな〜そういうのはいいんだがあの雑誌は
0218???
02/08/17 18:25ID:???アフォ過ぎだったんですね。
優しく教えていただき有難うございました!
0219nobodyさん
02/08/17 20:03ID:fKAF/2/WPERLってパラメータ(変数)渡してファイル実行、てできないんでつか。
cgiページで別のcgi呼ぶのに
require 'XXX.cgi';
とやればいいのは分かるんですが、変数渡して実行するやり方が
分かりません。
0220nobodyさん
02/08/17 20:38ID:???グローバル変数はそのままサブに引き継がれるが・・・
難しいか?
====================
本スクリプト
$aa = 1;
$bb = 2;
require 'XXX.cgi';
&XXX;
====================
XXX.cgiの内容
sub XXX {
$cc = $aa + $bb;
print "$aa + $bb = $cc";
} 1;
====================
0221nobodyさん
02/08/17 20:43ID:???====================
本スクリプト
require 'XXX.cgi';
&XXX(1,2);
====================
XXX.cgiの内容
sub XXX {
$aa = $_[0];
$bb = $_[1];
$cc = $aa + $bb;
print "$aa + $bb = $cc";
} 1;
====================
0222nobodyさん
02/08/17 21:02ID:???分かりました!ありがとうございます、やってみます。
0223nobodyさん
02/08/17 21:08ID:???} 1;
ってどういう意味があるのですか?
このパッケージ関数の仕事は正常に終わったよ(゚Д゚)、ペッ って意味。
0228nobodyさん
02/08/17 22:47ID:???( ゜д゜)ポカーン
0229nobodyさん
02/08/17 22:48ID:???>225-227
タイム( ゜д゜)ポカーン
0236nobodyさん
02/08/18 15:40ID:CpuDe273openでURLを指定してwhileでprintさせてみましたが
何も表示されませんでした。
もしできるのなら方法を教えてください。
0237nobodyさん
02/08/18 15:44ID:???http://ash.jp/perl/socket_http.htm
0238nobodyさん
02/08/18 15:56ID:QsLadsc+アプレットを、なんとかしてホームページで使いたいと考えています。
WaterPicというアプレットなのですが、
「classファイルが見つかりません」とステータスバーに表示されてしまい
必要なファイルはすべてサーバーにアップしたのですが、
うまく表示されません。
海外サイトなので、翻訳ツールなど使ってFAQを読んでみたり
自分なりに検索をしてみたのですが、どこを直せば良いのかわからず…。
どなたかご教授戴けますでしょうか。よろしくお願い致します。
参考サイト ttp://www.durius.com/index.php
0240nobodyさん
02/08/18 16:27ID:QsLadsc+0242nobodyさん
02/08/18 16:31ID:???ここ Javaアプレット のスレじゃなくて perl のスレですよん?
>>1 読んでます?
アプレットの設置で詰まってるならWeb製作管理板へどうぞ
☆ Webサイト制作初心者用スレッドver29 ☆
http://pc3.2ch.net/test/read.cgi/hp/1028459248/l50
0243nobodyさん
02/08/18 16:32ID:QsLadsc+0244nobodyさん
02/08/18 17:42ID:iuSsoGyA戻り値を得るのに時間がかかった時のために、タイムアウト時間を
指定する方法はないのでしょうか?
unless (connect SOCKET, $sockaddr) {
warn "don't connect $host:$port $!";
return 0;
}
一定時間後に別プロセスからシグナルを受け取ると、connect関数の
戻り値が得られていなくても次の動作にうつる、という方法も考えた
のですがもっと簡単な方法があれば教えてください。
0245+++
02/08/18 18:00ID:R5t0PgRFhttp://www.ActiveState.com/ActivePerl/download.htm
↑ココから進んだ先で、DL出来ないんですが、
なぜでしょう?(Win の AS package)
どこか他でDL出来ないでしょうか?
0246nobodyさん
02/08/18 18:02ID:???http://downloads.activestate.com/ActivePerl/Windows/5.6/ActivePerl-5.6.1.633-MSWin32-x86.msi
0247+++
02/08/18 18:07ID:R5t0PgRF落ちてきます?
404なんですけど・・・。
0248+++
02/08/18 18:10ID:R5t0PgRF0249f
02/08/18 18:25ID:zqX/Ef2t〇デートクラブ〇女性専用ホストクラブ〇
〇ハードSM奴隷クラブ〇レズビアン倶楽部〇ホモ・オカマ倶楽部
〇変態痴女と遊ぶ会〇痴漢・覗き趣味の会〇変態同好会・各種!
●楽しく遊べます! 090-8002-8356番
-----------美男・美女会員など多数在籍中-----------
http://www.mttdocomo.jp/
-----女性アルバイト随時募集・高収入(日払い)月100万円可能-----
-----レズビアン・スタッフ●ホモスタッフ●女性専用ホストスタッフ同募-----
http://www.mttdocomo.jp/
------------------------------------------------
0250+++
02/08/18 19:21ID:???メンテかなんかだったんでしょうかね?
とにかく、解決しました。スレ汚しスマソ。
0251nobodyさん
02/08/18 20:15ID:???alarmとevalを使えばよい。
http://www9.org1.com/~anach/memo/20020309.html
0252nobodyさん
02/08/18 21:56ID:???スクリプトのエラーがあると、err500とかになっちゃいますが、エラーの個所とか出せないんでしょうか?
前はIIS+ActivePerlだったんですが、そのときはエラーログが残ったんですが。。
0255nobodyさん
02/08/19 11:26ID:???use sigtrap;
use diagnostics;
use warnings;
0256nobodyさん
02/08/19 12:43ID:???CGI.pmを使ってフォームから
ENCTYPE="multipart/form-data" METHOD="POST"
としてCGIに送っているのですが、書き込みを中止させたときに
JavaScriptで書き込みのページに戻しているのですが(一から書き直させない為です)
「 警告 : ページの有効期限切れ 」
と、出てしまいます。
これはしょうがないのでしょうか?
CGI.pmを使わない普通の掲示板だと上手くいくのですが・・・。
0258nobodyさん
02/08/19 13:59ID:???IO::Socket の connect()メソッドのコードを見よ。
ってかIO::Socket::INET使え。
$sock = IO::Socket::INET->new(
PeerAddr => $host,
PeerPort => $port,
Proto => 'tcp',
Timeout => 60,
);
■ このスレッドは過去ログ倉庫に格納されています