【Perl】初心者コーナーPart10
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
02/02/24 22:18ID:zOj6Yq/31:自分はこう言う事がしたい。
2:それでこんな風にやってみたが・・・
3:それだとこんなエラーが出て上手く行かなかった。
1と3が無いと誰も答えられないよ、良い回答は良い質問から。
一緒に勉強しましょう。
参考書籍はこちら【【Perl,CGI】参考書籍 第2版 】
http://pc.2ch.net/test/read.cgi/php/988809842/
CGIの質問はこちら【CGIだけど、なんか質問ある?part5】
http://pc.2ch.net/test/read.cgi/php/1009331505/
その他の雑多な話題は、【CGIに依存しないPerlの話題一般】
http://pc.2ch.net/test/read.cgi/php/991313362/
過去ログ、その他の役立ち情報は>>2-10を見よう。
0268
02/03/07 14:47ID:q6SBx/iVサンプルとか載ってるととっても助かります
教えて下さい。
0269nobodyさん
02/03/07 14:49ID:???0271nobodyさん
02/03/07 16:32ID:???0272nobodyさん
02/03/07 16:36ID:???よそで基礎知識を付けてからのほうがデマ吹き込まれなくていい。
あらゆる書籍、webサイトで調べてそれでもわからなかったときの
最後の手段が2ch
0276nobodyさん
02/03/07 17:02ID:???0277271
02/03/07 17:05ID:???http://www.harukaze.net/~mishima/perl/perl_j.html
0278nobodyさん
02/03/07 17:09ID:???0279前述のs///oの質問した人
02/03/07 17:13ID:???そのとおりである!
・・・おれはよく甘えるがなー・・・
いやおれも分かる範囲ならできるだけ答えるよ。
でも>261は最初の質問の時点でスレ違いだったからなぁ・・・
0280s///o厨
02/03/07 17:16ID:???試しに自分のページを「エンコード:西ヨーロッパ言語」で見てみ。
それが毛唐ドモのPCに映る画面。
0281nobodyさん
02/03/07 18:09ID:???0282nobodyさん
02/03/07 18:10ID:???0283nobodyさん
02/03/07 18:13ID:???_ _
〃┏━━ 、
>− )
パタパタ | ノノソハ))) / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
(((\リリ ´ー` リ < 変なこと言うけどPerl/CGIの入門書。
((ニE/⌒ヾ∞"ヽ 上にも書いたけどCGIはある条件さえ満たせば言語は問われないんだ。
(こ) ∞ |こ) 無理してCでの入門書を探すより腐るほど出てる詳しいPerlでの本の方が参考になるよ。
く__∞,ノ 上にも書いたけどPerlはCとかなり似ているから結構読めるよ。
し' し'
暇だから簡単にまとめておくね。
POSTの場合、データは標準入力に入る。
GETの場合、データは環境変数QUERY_STRINGに入る。
リモートホストなどのステータスは環境変数に入る。
出力は標準出力に対して行う。
出力の前にprintf("CONTENT-TYPE: text/html\r\nr\r\n");を忘れないでね。
うぐぅ。あんまり祐一の役にたてなかった気がするよぉ。
0284nobodyさん
02/03/07 19:59ID:???<HEAD>
<SCRIPT LANGUAGE="JavaScript">
function WindowOpen(){
window.open("ここにページの名前.htm")
}
</SCRIPT>
</HEAD>
<BODY onunload="WindowOpen()">
</BODY>
</HTML>
0286nobodyさん
02/03/08 04:19ID:rUODFwebお絵描き掲示板を設置しようかと考えているのですが、
割り当てられた容量が5MBとやや少なめ(と、言われた)なのです。
お絵描き掲示板は負担がかかると聞いたのですが
出来るだけ負担を軽くするようにするにた例えばどのような工夫が必要でしょうか。
要領を得ない質問で申し訳無いですが、ご指南下さい。
0287nobodyさん
02/03/08 04:48ID:???小さなスペースみたいだから、画像サイズが(小さく)選べてjpegに対応してて、
画像圧縮率も変えられるようなのが良いんでない?
荒らし対策も考えると、しぃちゃんのPaintBBSアプレット使った奴がいいかも。
というか、ここは自分でコードを書く人の為のスレッドだよ…。
0288nobodyさん
02/03/08 10:15ID:???一行も書けないよ〜〜〜
0289nobodyさん
02/03/08 11:00ID:wwEgc1iJ頂いてやって来ました。
Apache 1.3.12 文字化け問題で、サーバの管理者にiso-8859-1を削って貰いました。
でも、依然としてMac+ネスケ4.xの環境で、cgiからの飛び先がhtmlだったり、
htmlとcgiの混合フレームの場合に化けます。
化けるのはいずれもhtml部分で、cgiは問題ありません。
そこで.htaccessに AddTypeを入れたところ、Mac+ネスケ環境では改善したのですが、
必ずWIN+ネスケ6.xにおいて激しく文字化け、リロードしても改善されない、という現象に陥ってしまいます。
cgi、html、いずれもshift_jisで書いて、保存してあります。
metaにはshift_jis指定をしています。
また化けhtmlに影響している、cgiに Content-Type: text/html; charset=Shift_JIS とcharestを追記すると、今度はサバエラになってしまいます。
勿論「;」や「"」には気をつけています<削除しないように
スキルがないなりに、\や\nをつけたり色々やってはみました。
はー。何ででしょう?
というか、一番不可解なのは、.htaccessに AddTypeを入れると、
どうしてネスケ6.x+WINで必ず文字化けしちゃうのか、分からないのです。
基礎知識がないので、この状態でいっぱいいっぱいです。
どなたかアドバイスをお願いいたします。
0290nobodyさん
02/03/08 11:12ID:???0291nobodyさん
02/03/08 11:13ID:???始めにhtmlの文字コードは?と聞いたものですが。
cgiも書けるのでしたw
>cgiに Content-Type: text/html; charset=Shift_JIS とcharestを追記すると、今度はサバエラになってしまいます。
コード見せてもらえればツッコミは入れられるかなと思います。
http://www.harukaze.net/~mishima/perl/cgi-tech-tips.html
に一通り文字コード対策載ってますね。
0292289
02/03/08 11:26ID:wwEgc1iJprint "Content-type: text/html\n\n";
print "<html><head><title>$main_title</title>\n";
print "<META content=\"text/html; charset=Shift_JIS\" http-equiv=Content-Type>\n";
print "<META content=text/css http-equiv=Content-Style-Type>\n";
&style;
でしょうか?
一緒に来て頂いて有り難うございます(笑)<291
<291
EUCは試してみていません。<html
保存をEUCにして、metaも変更してみる、という意味ですよね?
っつか、恥ずかしいのですが、eucで書いた事ないので、オノレに不安です。
0293nobodyさん
02/03/08 11:38ID:???0294289
02/03/08 11:46ID:wwEgc1iJ有り難うございます。
CGIは無事動きましたが、依然として最終飛び先のhtmlは化けてます…
0296茶文字 ◆xELvisFU
02/03/08 14:14ID:???>>294
最終飛び先のHTMLはCGIが生成しているのではなくて、もろHTMLなの?
フレームを使っているという話だったから、frameset定義ファイルと
各フレームに入るページの文字コードをそろえておいた方が安全な気はする。
0298289
02/03/08 14:33ID:wwEgc1iJ有り難うございます!(笑)
もろHTMLです。
cgiが生成しているのではありません。
メールフォームを送信し終わった後の飛び先のフツーのhtmlが化けます。
またフレームの方は上フレームがcgi、下がhtml(cgiが生成ではありません)
こちらも文字コードはshift_jisにて一貫させております。
つまり具体的には二箇所化けているのです。
ぶっちゃけて言えば、チャットの入り口と、送信フォームの最後の飛び先です。
メタはタイトルの上に置いたり、色々したんですが、どーしても化けるんです〜。しくしく。
0299茶文字 ◆xELvisFU
02/03/08 15:16ID:???どんな化けかたしてます?
HTMLによるマークアップが反映されているけど文字が判別できないのか、
HTMLの跡形もなくテキストがだーっと続いてる状態なのか。
後者だとしたらバイナリでPUTしてもーたっつー可能性も考えたんだけど。
# 鳩丸見てきたけど、frame要素にtype属性とcharset属性は存在しないみたいっすねぃ。
0300289
02/03/08 15:41ID:wwEgc1iJこんな感じです<ちなみに「戻る」です。
説明が後からになってしまって申し訳ありません。
サーバのapacheのバージョンが上がる前は普通に表示されていました。<チャットも送信フォームも
例の問題のapacheにバージョンアップした途端に駄目になったものです。
朝からずっと皆さんには色々とアドバイス頂いて恐縮です。
引き続きアドバイスお願いいたします。
0301286
02/03/08 15:43ID:???スレ違いだったのですね・・・気づかずに失礼しました。
レスありがとうございます。とても参考になりました。
しぃちゃんのPaintBBSアプレットにしたいと思います。
0302nobodyさん
02/03/08 15:53ID:???ttp://www.ecc.u-tokyo.ac.jp/guide/faq/charset.html
これとかじゃないのかな?
『文字化け』『Apache』のGoogle検索で一発で出たんだけど。
0303nobodyさん
02/03/08 15:55ID:???これも同じかな?
0304nobodyさん
02/03/08 16:28ID:???きも
0305289
02/03/08 16:42ID:wwEgc1iJその通りです。
Google等で検索結果は全部目を通し、その結果、ap_send_error_response() のiso-8859-1 を iso-2022-jpに変更を
サーバ管理者にお願いしたのですが、Mac+ネスケで化けるために
自分で.htaccessを書き、そこにAddTypeを記述、アップすると、
Mac+ネスケでは改善しますが、WIN+ネスケ6で文字化け
(.htaccessのあるディレクトリ全部)、という現象に陥って困っているのです。
0306nobodyさん
02/03/08 16:51ID:???print "Content-Type: text/html\n";
print "Location: hoge \n\n";
これで試してもダメだった?
Locationで化けるって事だよな?
飛び先とか漠然とした言い方をせず飛ばす手段を説明しる。
0307nobodyさん
02/03/08 16:55ID:+6IU9s64001,a1,b1,c1
002,a2,b2,c2
003,a3,b3,c3
004,a4,b4,c4
005,a5,b5,c5
のようなデータからランダムに1行拾って書き出したいんですがどうすればいいのでしょうか
0308289
02/03/08 17:02ID:wwEgc1iJ有り難うございます。
で…この板の敷居が高いという言い訳になってしまうのですが…
それはドコに入れれば良いのでしょう?
CGIの中の print "Content-Typeの行のあたりにさっくり入れても大丈夫でしょうか?
また飛ばし先のURL指定は、CGIそのものではなく、
set.plまたはcustom.cgiのような、設定ファイルに記入という方式なのです。
CGIを理解してない癖にゴチャゴチャとごめんなさい。
0309nobodyさん
02/03/08 17:10ID:???そりゃCVSじゃなくてCSVだ。意味が全然違うぞ。
ちゃんと調べてから聞こうねー。
http://www.din.or.jp/~ohzaki/perl.htm#File_Random
0310nobodyさん
02/03/08 17:14ID:???質問を変える。
あんたが使ってるCGIとやらは、誰が組んだものだ?
無料配布されているものか?
自身で組んだものではなさそうだな。
無料配布のを使っているならこっちに行って配布先を明記の上で相談した方がいい。
スクリプト改造工房 Part4
ttp://pc.2ch.net/test/read.cgi/php/1012839651/
>1にあるように
>いらっしゃーい、Perlのコーディングで困ってる人のスレです。
ここはPerlの「コーディングで困ってる人」のスレなんだ。
たらい回しみたいになって悪いね。
もし、配布物でないのなら、あんたの使ってるCGIとやらを拡張子「.txt」にしてアップしてくれ。
ソースが見れないと具体的なことは言いにくい。
はっきり言ってしまうと、あんたの説明じゃ埒があかない。
0311nobodyさん
02/03/08 17:27ID:???ローソン
イレブン
ミニストップ
サンクス
のようなチェーン店からランダムに1店舗拾って経営したいんですがどうすればいいのでしょうか
0312289
02/03/08 17:37ID:wwEgc1iJ自分ではperlは書けない部外者がグズグズとごめんなさい。
使っているのは、無料配布されているCGI軍団です。
おっしゃる通りです。
教えて頂いた場所へ行ってみますね。
お騒がせいたしました。
0313nobodyさん
02/03/08 20:54ID:d+W0Gg3j使えるならやり方を詳しく教えてください。
お願いします。
0314nobodyさん
02/03/08 21:00ID:???>いらっしゃーい、Perlのコーディングで困ってる人のスレです。
0315nobodyさん
02/03/08 21:26ID:???http://www.google.com/search?hl=ja&q=XP%82%C5Apache%82%CD%8Eg%82%A6%82%E9%82%CC%82%A9&lr=lang_ja
0316nobodyさん
02/03/08 21:27ID:???313はXPでapacheを起動するperlスクリプトのコーディングで困ってるんだよ。
system("c:/progra~1/apache/httpd.exe");
0318ge
02/03/09 00:54ID:oQUE7R44エラーがあった場合に、
'C:\Program Files\httpd\cgi-bin\test\test.cgi' script produced no output
とでるだけでエラーが出ないのですが、
DOS から perl を打った時のようにエラー表示したいのですが、
どうしたらよいでしょうか。
0320ge
02/03/09 00:56ID:oQUE7R440321s///o厨
02/03/09 01:08ID:???anHTTPdは安定しないしすぐリソース喰うので好きじゃないが。
0322nobodyさん
02/03/09 01:38ID:kV8ZYAMBuse CGI::Carp 'fatalsToBrowser';
ちかいもんはでるよ。
0323nobodyさん
02/03/09 02:03ID:???0324nobodyさん
02/03/09 03:56ID:???なにも出力しないで終了しやがったってことだろ。
「出力こねーぞ!」ってエラー出してるだろ。
プログラムを見直せ。
AnHTTPDだと、[GI出力を検査]のチェックボックスにチェックがしてあれば、
Perlのエラーを表示してくれるだろ。
0325nobodyさん
02/03/09 06:20ID:???PerlへのパスがPerl.dllになってるとエラー吐かないことあるよね。
Perl.exeだと吐くけど。
0326nobodyさん
02/03/09 09:38ID:biqte+lk0327nobodyさん
02/03/09 11:15ID:fgv50gi6print "777777777777777" % "10" . "\n" ;
これの答え、5になる奴いない?
バージョン5.00503で、答え5になるやつが
あったんだけど、誰か詳細しらん?
0329nobodyさん
02/03/09 11:35ID:fgv50gi6わざとやってんだよ、
いいから、お前はすっこんでろな。
0330nobodyさん
02/03/09 11:36ID:???http://pc.2ch.net/test/read.cgi/tech/991994996/505-519
0332nobodyさん
02/03/09 11:42ID:???http://www.tvdo.net/mrcam/vaiolx/
落ち着いてここのライブ映像でも見てくれ。激しく無料だ。
0333nobodyさん
02/03/09 12:21ID:???0334nobodyさん
02/03/09 12:44ID:???【青春の】衛藤家ライブカメラウォッチ【1ページ】
http://kaba.2ch.net/test/read.cgi/net/1015644999/l50
専門スレがたちました。
0335nobodyさん
02/03/09 13:17ID:???何熱くなってるんだかわからんが、もっとマターリ逝こうよ。
最近人少なくなってるんだからさ。
で、本題ね。
プログラミングやるんなら、16ビット・24ビット・32ビットの最大値くらいは
知っておくべき。
これヒントでもあり解答でもある。
0337nobodyさん
02/03/09 13:47ID:???0338nobodyさん
02/03/09 14:07ID:fgv50gi6おまえ、恐ろしいしったかバカだなぁ〜
あのよ、数字が小さくてもなんだよ。
でな、Perlのバージョンが同じでも、ライブラリのバージョンの違いで、
結果が変わるわけな、
でな、漏れが聞きたかったのは、libcとか、glibcのバージョンの依存があるとかよ、
そおういう事聞きたかったのよ、
ほぉ〜、ビット最大値ねぇ〜、今年になってから変わったっけ?
0339nobodyさん
02/03/09 14:31ID:???> でな、漏れが聞きたかったのは、libcとか、glibcのバージョンの依存があるとかよ、
> そおういう事聞きたかったのよ
じゃあ最初からそう書けばいいのでは。
あなたのような性格の方はこの板よりマ板向けかと思われます。
0340nobodyさん
02/03/09 16:21ID:???では初めからどうぞ。
0341nobodyさん
02/03/09 17:16ID:7LzSOF3K今、imode端末からcgi(perl)をたたくプログラムを作ろうと思ってるのですが
UIDの取り方のアドバイスをいただきたいのです^^;
NULLGWDOCOMOという文字を入れておけば、imodeサーバー側でユーザーIDに変換
してくれるとあったのですが
formをいくつか配置してあるものに
<form method="POST" action="test.cgi?uid=NULLGWDOCOMO">
とかけばよいのでしょうか?
ためしにサーバーにあげてテストしたところuidの値をみたら
そのまま文字列が入っていました。。
どなたかご教授いただけたらうれしいです。
よろしくお願いします。
0342>>341
02/03/09 20:19ID:???でどうでしょう
0343nobodyさん
02/03/09 20:19ID:???0345テストテスト
02/03/10 10:24ID:FplTavEMdocomoに登録申請されて許可されているディレクトリ以下であれば
UIDなる物に変換されます。いよゆるMYMENUです。
勝手なサーバーにやっても変換されません。
ドコモはPOSTサポートしています。一部のウンコ機種だけ使えないだけ。
0346nobodyさん
02/03/10 11:46ID:???ハッシュに、いくつの連想配列が含まれているのかを知りたいのですが、
やり方がわかりません。
わからないので仕方なく、
foreach (keys %HASH) { ++$HASH; }
のようなことをやっています。なにとぞお助け下さい・・・
0348nobodyさん
02/03/10 11:54ID:???0349ドビギナー
02/03/10 12:38ID:???1、最適なRWIN値ってどー出すの!?
2、「同時に張るコネクション数」ってどーゆーこと!?
お前ら、助けて下さい!
0351nobodyさん
02/03/10 12:40ID:Pl5m+TdB自分も>>346 のに興味あったので
%hash = (A=>1,B=>2,C=>3);
$i = %hash/2;
print $i,"\n";
print scalar %hash;
をやって試してみたんですが,
3
6
と予想したのに
1.5
3/8
が表示されました。
なんでこうなるんですか?
0354テストテスト
02/03/10 12:49ID:FplTavEM板違い。そんなものビギナーが気にする必要なし。
どこかのアアホサイト見てるんだけうが
HTTP 1.1でセッションを100個張るレジスト書き換え.regファイルとか
配布してるが、意味がないしスーパー迷惑なのでやめれ。
0355347
02/03/10 12:51ID:???$num = keys %HASH;
でいいみたい。(keys のかわりに valuesでもいいんだって)
http://plaza27.mbn.or.jp/~satomii/jdoc/perltut/associative.html
0356ドビ
02/03/10 12:52ID:???あと、板違いってことも気付いた。
ごめんな。
0358351
02/03/10 13:02ID:???%hash = (A=>1,B=>2,C=>3);
$i = %hash;
print($i,"\n");
print(%hash+0);
だと
3/8
3
になりました。
OS依存かと思って調べてみたら
http://www.kt.rim.or.jp/~kbk/perl5.005/perldata.html
>返される値は使 用しているエントリの数と、割り付けられているエントリの数を、スラ ッシュで区切った文字列です
らしいです。
お騒がせしました。
0359nobodyさん
02/03/10 13:10ID:???%h = (1,2,3,4,5,6,7,8,9,10);
print scalar keys %h,"\n";
print scalar %h,"\n";
が
5
4/8
って返ってくるんだよね。エントリ=要素ではないのかな。
0362nobodyさん
02/03/10 15:12ID:GU0dbd6s調べることってできるんでしょうか。例えば、bbs.cgiっていうCGIの中で、
bbs.cgiっていう文字列を自動的に得たいのです。同じコードをあっちこっちで
使っていて、更新するときに中身の書き換えを不要にするためです。
0363341
02/03/10 15:12ID:Ew4WhUAiそか、、NTTが許可したサーバーでだけ使えるんですね^^;
アドバイスありがとうございました。
0365nobodyさん
02/03/10 15:21ID:GU0dbd6sお、それはヒントですか?調べてみます。ありがとうございます!
■ このスレッドは過去ログ倉庫に格納されています