[過去ログ] 月宮あゆのPerl教室 Part.4 (1001レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
1(4): 月宮あゆ [ayuayu@2ch.net] 02/02/19 14:34 ID:??? AA×
875: 03/03/19 15:24 ID:??? AAS
でも「/」がたくさんあるといちいち「\/」に書き換えないとだから大変だよね。
ということで、じつは・・・
● =~ s#◆#★#g;
なんてのも使えるんだよ。
これなら「/」が多い日も安心ですね。
・・・っていうのは次回でつか?
「1文字ずつ対応させて置換する」って表現ではどうでしょう?>tr|y
$test = '01234-02468-13579-56789';
$test =~ tr/[0-9]/[A-J]/;
print $test; # ABCDE-ACEGI-BDFHJ-FGHIJ と表示
876: 03/03/19 15:24 ID:??? AAS
$test =~ tr/[0-9]/[A-J]/;
[]に意味はあるのかい?
877: 03/03/19 15:24 ID:??? AAS
$testに[]が含まれると、戻り値の置換文字数が変わってくる。
878: 03/03/19 15:24 ID:??? AAS
tr[0-9][A-B];
と書き変えておこうとして忘れてました。
スマ
879: 03/03/19 15:25 ID:??? AAS
これから先ずっと使う前に
q, qq, qw を覚えよーょ。
クォートのエスケープは他の言語でもよく使われるから、
覚えておいて損はないけど。
880: 03/03/19 15:25 ID:??? AAS
>pearさん
こんど♪のスクリプトも改良してほしいですぅ
881: 03/03/19 15:25 ID:??? AAS
ここにも出たか、粘着リア厨が!
さっさと糞してねれ!!
削除依頼出しとけよ!
882: 03/03/19 15:25 ID:??? AAS
=粘着
883: 03/03/19 15:25 ID:??? AAS
>>335=尾瀬原必死だな
まああんな穴だらけのクリプト晒されりゃいい恥さらしだから無理もないか(藁
884: 03/03/19 15:25 ID:??? AAS
正規表現のコンストラクタ、qr//も忘れずにな
885: 03/03/19 15:26 ID:??? AAS
〃┏━━
|. ノノソハ)))
(\リリ ´ー`)リ < 展開とクオート風演算子
(ニE(#つo⊂#)
リクエストがあったから勉強するね。
$text = "うぐぅ";
print "うぐぅ<br>\n";
print "$text<br>\n";
print 'うぐぅ<br>\n';
print '$text<br>\n';
例えば、後々の説明を楽にするために、これを実行させてみてね。
'…' で囲むと、変数名がそのまま出ちゃったり、
ちゃんと改行されなかったりすることがわかると思うんだ。
'…' では、変数やメタ文字は【展開】されないよ。
つまり、囲った文字がそのまま出る、っていうことなんだ。
"…" では、【展開】されるよ。
さっきの例のソースを、全部、
"…" で囲んであるものは、 qq{…} に書き替えができるよ。(展開されるよ)
" が、ダブルクオーテーションっていう記号だから q がふたつあるのかな。
'…' で囲んであったら、 q{…} に書き換えができるよ。(展開されないよ)
こういうのを、クオート風演算子、っていうよ。
ボクは個人的な話だけど、 print は全部 qq{…} で書いてるよ。
続くよ。
886: 03/03/19 15:26 ID:??? AAS
〃┏━━
|. ノノソハ)))
(\リリ ´ー`)リ < クオート風演算子
(ニE(#つo⊂#)
qw についても説明するね。
● = qw{★};
★で、半角スペースで区切った文字列を順番に配列●に代入するよ。
これは知らなくてもそんなに影響はないと思うんだけどね…
qr は、取り扱うとしたらもう少し先になるかな…?
あといくつか、クオート風演算子はあるんだけど、代表的なものとしてこのへんで終わりにするね。
{ } って書いたけれど、一定の制約を守っていれば、 { } じゃなくてもできるよ。
一定の制約
・英数字以外の半角文字だったら何でもいいよ。
・ # を使うときは、直前にスペースがあると、コメントと間違うから注意だね
・カッコを使うときは、左右でペアにして使うよ。 { } ( ) [ ] < >
これは、正規表現の時にも使えるんだ。
たとえば、置換演算子の時では…
$test =~ s/xxx/yyy/g;
$test =~ s#xxx#xxx#g;
$test =~ s{xxx}{yyy}g;
これらは全部同じことを表しているよ。
それにしても、ボクはこの授業の内容は全部テキストファイルにしてるんだけど、
→ この行でちょうど1000行に達してしまうんだよね…。
ボク、よくこんなに書いたなあ…
887: 03/03/19 15:26 ID:??? AAS
さんが上手く説明してくれてるね。
ボクにはこれ以上うまく説明はできないかな
おんぷちゃんねるのスクリプト…?
改造すべきところなんてあるかな?
どう改造してほしいか言ってくれたら、
もしかしたら1%ぐらいの確立で改造してみるかも
あと、ここでは「あゆ」って呼んでくれた方がうれしいな
888: 03/03/19 15:26 ID:??? AAS
>342
ごめんなさいです。。。
用なし逝って話しますですぅ
889: 03/03/19 15:26 ID:??? AAS
さん
ありがと、そっか〜つまり抜けてる部分とか余ったりするとよくないっぽいんだね。
一つずつってのがポイントみたい。
これでtrは解ったよ、ホントありがと。
うぐぅタン
だんだん難しくなってきたよ・・・。
まだ何とか付いていけてるから、次もよろしく〜
890: 03/03/19 15:26 ID:??? AAS
334トリップ忘れた・・・(汗
891: 03/03/19 15:26 ID:??? AAS
このすれ く さ い
892: 03/03/19 15:27 ID:??? AAS
おまえが近づかないようにするためだよ。
893: 03/03/19 15:27 ID:??? AAS
〃┏━━
|. ノノソハ)))
(\リリ ´ー`)リ < サブルーチン (1)
(ニE(#つo⊂#)
Perlで一番重要な、サブルーチンについての説明だよ。
自分で処理を決める関数のようなものがつくれるから、ユーザー関数とかも呼ばれるよ。
サブルーチンは、「宣言」しておくと「実行」できるようになるよ。
じゃあ、宣言の方法を説明するね。
個人的な話だけど、ボクは、 { } の中に改行がくるときは、
インデントすることにしてるよ。インデントっていうのは、
行の始めにタブやスペースをいれて、始まりを右にずらすことだよ。
アンインデント、はこの逆だね。
これを使うと、スクリプトが複雑になってくると見やすくていいよ。
sub abc{
$x ++;
}
これは、変数 $x に 1 を足す、サブルーチンだね。
呼び出すには、 &abc; って書いて呼び出すよ。
サンプル。「2」って表示されるよ。
$x = 1;
&abc;
print "$x";
sub abc{ $x ++; }
サブルーチンはとっても重要で便利だから、必ずマスターしてね。
894: 03/03/19 15:27 ID:??? AAS
うん、そうしてね。
わかってくれてうれしいよ
だんだん難しくなっていくね
わからないことがあったら気軽に聞いてね。
895: 03/03/19 15:27 ID:??? AAS
ありがと、
とりあえず今のところ大丈夫だよ。
次は何が出てくるのか楽しみです。
896: 03/03/19 15:27 ID:??? AAS
cgi-lib.plを使わないの簡易掲示板の作り方を教えて欲しいでつ。
897: 03/03/19 15:27 ID:??? AAS
待て、一番重要なサブルーチンの説明がよりによって引数無し、グローバル変数操作かよ。
常識的なサンプルを提示できないなら、頼むから何もしないでくれ。はっきりいって迷惑。
898: 03/03/19 15:27 ID:??? AAS
(1)って書いてるじゃねーか(2)があるんだろ
おとなしく待てよ行数規制があるんだから
899: 03/03/19 15:28 ID:??? AAS
(2)はどこじゃヴぉけぇ!!!!!
900: 03/03/19 15:28 ID:??? AAS
sub hogehoge {
my %param = @_;
#何か
return ...;
}
901: 03/03/19 15:28 ID:??? AAS
>これは、変数 $x に 1 を足す、サブルーチンだね。
( ´,_ゝ`) プッ $x= 'A'でも1足すのかよ
$x= 'A';
$x++;
print $x; # これはB
$x= '?';
$x++;
print $x; # これは1
よく頭に叩き込んでおけ
902: 03/03/19 15:28 ID:??? AAS
ゼロ文字幅
^ =>最初
$ =>最後
文字
. =文字
[..] =>文字クラス。括弧の中の、任意の1文字
[^..] =>中身以外の文字を1つ
繰り返し
* =以上
+ =以上
{n} =>n回
{n,m} =>n以上m未満
{n,}、{,m} も可能
(?:...) =>まとめるだけでいいとき
(...) =>後から$1とかで使うとき
\1 \2 \3 =>パターンマッチの中で使える。
$1 $2 $3 =>外で使う
903: 03/03/19 15:28 ID:??? AAS
サブルーチン(1)
確かに、これだけじゃちょっと・・・
変数のスコープとか、GC,
サブルーチン内でグローバル変数を変更する事のリスクとか。
後できちんとフォローすれば大丈夫。多分。。。
904: 03/03/19 15:28 ID:??? AAS
オタクスレ相互リンク
綾波レイのWEB制作管理教えますれ
2chスレ:hp
905: 03/03/19 15:29 ID:??? AAS
漏れは普段平気でグローバル変数操作してるが。
use strictなんてきらいだよー。
906: 03/03/19 15:29 ID:??? AAS
分かったから屑は死ね。
907: 03/03/19 15:29 ID:??? AAS
月宮あゆのPHP教室もキボン!。
908: 03/03/19 15:29 ID:??? AAS
〃┏━━
|. ノノソハ)))
(\リリ ´ー`)リ < サブルーチン (2) 返り値
(ニE(#つo⊂#)
サブルーチンでは、返り値 (かえりち) っていうものが作れるよ。
「返り血」とか変なこと言ったら嫌だよ。
$x = &xxx; # $x には abc が代入されるよ。
sub xxx{ return "abc"; }
return ●
…●を返り値として、呼び出し元に戻る。
ちょっとここで注意だけど、この関数は、絶対にサブルーチンの外で
使っちゃだめなんだ。戻る場所がないからね。
ふたつ以上の返り値を送りたいなら、
return ( $a, $b, $c );
みたいに配列にして送るといいよ。
受け取るときは、
( $a, $b, $c ) = &xxx;
こうやって受け取ることができるよ。
それか、配列をあらかじめ作っておいて、
return @xxx;
@xxx = &xxx;
みたいなこともできるよ。
909: 03/03/19 15:29 ID:??? AAS
もうすこし先で勉強するからもうちょっとまってね。
サブルーチン、はとりあえず (4) か (5) まで続くと思うよ。
今は (4) の途中まで書いてるからね。。
確かに、オートインクリメント演算子は、「1足す」じゃなくて、
「値を1増加させる」っていう機能なのはその通りなんだけど、
そんな扱ってないようなことを勝手に進めないで。
先に「省略してるところもある」ってちゃんと言ってるんだから。
そんなことはあまり知る必要ないんじゃない?
必要最小限のことは付け足すからね。
ボクはPHPはほとんどできないんだよね。。
勉強するにもPHPの入門書が数ないからねえ。。
910: 03/03/19 15:30 ID:??? AAS
返り値と戻り値って、どう違うの?ダレカオシエテ
911: 03/03/19 15:30 ID:??? AAS
重箱の隅をつつくようだけど、実はサブルーチンの外でもreturnを使えるケースがあるんだよね。
標準ライブラリの中にもその使い方をしているものもあるよ。
ところで、-wスイッチとuse strictの説明の予定はあるの?
コーディングを楽にするためにも、まずその説明をした方が良いと思うね。
同じ意味だと思うよ。
912: 03/03/19 15:30 ID:??? AAS
ありがと。戻り値でも通じるんだよね?
よかった、前から気になっていたんだ。
913: 03/03/19 15:30 ID:??? AAS
use strict;無しで書くほうが、後から面倒なことになる。げぼ。
914: 03/03/19 15:30 ID:??? AAS
くさい
915: 03/03/19 15:30 ID:??? AAS
すいません、教えて下さい
foreach
これってフォーイーチ?
フォーリーチですか?
気になって仕方ないです…
お願いします。
916: 03/03/19 15:30 ID:??? AAS
for eachだから、そのように。
917: 03/03/19 15:31 ID:??? AAS
f or each
918: 03/03/19 15:31 ID:??? AAS
それはあんまりです(笑
919: 03/03/19 15:31 ID:??? AAS
〃┏━━
|. ノノソハ)))
(\リリ ´ー`)リ < サブルーチン (3) 局所化
(ニE(#つo⊂#)
サブルーチン、といえばこの関数はよく出るから覚えておいてね。
my と、 local と、 return だよ。
return は、もう勉強したからいらないね。
じゃあ、今回は my と local について勉強するね。これはほとんど同じ意味だよ。
だから、ここでは同じものとするね。いつか機会があれば、説明するね。
my ●;
local ●;
…どっちも、変数●または配列●を、そのサブルーチンの中だけで
有効にする、っていうことだよ。
my 宣言された変数を、プライベート変数、 local はローカル変数、っていうよ。
逆に、スクリプト全体で使える変数をグローバル変数、っていうよ。
【いちばん内側の { } で囲まれた範囲だけで有効な変数】っていうことかな。
この有効範囲を、スコープ、っていうよ。
my $xxx; # $xxx を my 宣言する
$xxx = "abc"; # 前の行で my 宣言されている
$yyy = $xxx; # $yyy は my 宣言されていない
my $zzz = "xyz"; # $zzz はここで my 宣言される
じゃあサンプルだよ。
$my = "abc"; $test = "abc";
&xxx;
print "my 宣言した変数=$my<br>\nしてない変数=$test";
sub xxx{ my $my = "xyz"; $test = "xyz"; }
920: 03/03/19 15:31 ID:??? AAS
うん、同じだね
eval の中かな?
eval はまだ取り扱ってないから、出てきたときに説明しようと思って、
こんなところで「eval」って出したら混乱する人もいそうだから、
あえて説明しなかったんだよね。。
-w とか strict は、知っておいた方がいいことだろうね。。
-w は未定だけど、 strict はそのうち勉強する予定だよ。
ふぉーいーち、だと思うよ
921: 03/03/19 15:31 ID:??? AAS
このあゆ、息臭いなあ
このあゆ、汗っかきだなあ
このあゆ、ワキガ??
922: 03/03/19 15:31 ID:??? AA×
923: 03/03/19 15:31 ID:??? AA×
924: 03/03/19 15:32 ID:??? AAS
ヴ?
925: 03/03/19 15:32 ID:??? AAS
そういえばevalもそうだっけ。でもそれ以外にもあるよ。
実はrequireされるライブラリファイルの中だとreturn出来るんだよ。
例えばAnyDBM_Fileがそうしてる。
ま、普通は使わない機能だけどね。
926: 03/03/19 15:32 ID:??? AAS
perldoc -f return
subroutine, eval, do FILE ... みたいですね。
ライブラリの中って言うのは、よくモジュール等の最後に 1; ってやるけど
あれって、return が省略されていたんだ?
そういえば、sub 内でも定数とかを返すだけのサブルーチンでは
return省略してるの良く見かけるよなぁ
927: 03/03/19 15:32 ID:??? AAS
> あれって、return が省略されていたんだ?
ちょっと違う。
returnがない場合、最後に評価された式の結果が返される。
1; というのは式1;の値は1だから1が返る。
…って動作のはず。
928: 03/03/19 15:32 ID:??? AAS
日本語のページからうぐぅを検索しました。 約56,500件中1 - 50件目 ・検索にかかった時間0.09秒
929: 03/03/19 15:33 ID:??? AAS
Perlのクラスは何であんなにヘンテコですか?
930: 03/03/19 15:33 ID:??? AAS
あんなにってどんなに?
931: 03/03/19 15:33 ID:??? AAS
↑
睾丸無知
932: 03/03/19 15:33 ID:??? AAS
は睾丸ですか?
933: 03/03/19 15:33 ID:??? AAS
あゆタンはやく続きおせーて
934: 03/03/19 15:33 ID:??? AAS
しぼーん
935: 03/03/19 15:33 ID:??? AAS
(´・ω・`)ショボーン
936: 03/03/19 15:33 ID:??? AAS
〃┏━━
|. ノノソハ)))
(\リリ ´ー`)リ < サブルーチン (4) 引数
(ニE(#つo⊂#)
引数、っていうのは、「ひきすう」って読むらしいよ。
ボクはこのあいだまで、「いんすう」だって思ってたんだけど。。
サブルーチンから値を持って戻る、っていうことをやったね。
じゃあ次は、値を持ってサブルーチンを実行するっていうことをやるね。
&xxx("abc", "123", "あいう");
こんな風に呼び出すと、特殊配列 @_ に頭から代入されて呼び出されるよ。
当然、
@list = ("abc", "123", "あいう");
&xxx(@list);
と同義だよ。
この辺の話を覚えて、次回は、名無しさんならエラー、っていう
ソースに改造してみるよ。
#投稿が遅れてごめんね。
#遅れてもdat落ちや削除されない限り途中で放棄することはないからね。。
937: 03/03/19 15:34 ID:??? AAS
そうなんだ‥
知らなかった
ちょっと恥ずかしいな
えっ
そんなにあるのっ?!
なんだかすごいね
Perl、ってクラスって言うのかな…?
呼び方とかよく知らないや。。
遅れてごめんね。
938: 03/03/19 15:34 ID:??? AAS
キタキタキター
939: 03/03/19 15:34 ID:??? AAS
月宮あゆのPHP教室きぼんぬ
940: 03/03/19 15:34 ID:??? AAS
このスレほんと勉強になりました。
で、PHPの勉強にすることにしたので、
おれもPHP教室を希望します。
ちょっとづつでいいのでお願いしたいです。
941: 03/03/19 15:34 ID:??? AAS
いまさらPerl勉強しても需要も無い仕事無い
942: 03/03/19 15:34 ID:??? AAS
確かに今さらPerlっつってもね。
でも、月宮あゆ君はよくがんばってると思うよ。
今後もがんばってもらいたいね。Perlで移行!!。
943: 03/03/19 15:35 ID:??? AAS
perl今勉強中なんだが需要無いのか・・・
いや、なにか役立つでしょ。うん。
それとも先にcかphpを勉強した方が良いのか・・・?
944: 03/03/19 15:35 ID:??? AAS
レスどもです。
Perlは勉強していきます。役には立ちますよね。
次にPHP、そしてCという順にやっていきます。がんがります。
945: 03/03/19 15:36 ID:??? AAS
Perlは今後、使用者は減るけど使えないわけじゃないから勉強してもいいと思うよ。
でも、最終的にCするんだったら、ぼくはPHPを強く勧めるよ。
Perlから始めちゃうとPerl独自の癖がつくのでPerlしかできなくなる危険性があるので、
PHP勉強した後、Perlを勉強したほうかいいかもしれないね♪ がんがれ!
946: 03/03/19 15:36 ID:??? AAS
〃┏━━
|. ノノソハ)))
(\リリ ´ー`)リ < エラー画面を作る
(ニE(#つo⊂#)
じゃあ、まずはソースだよ。
外部リンク[txt]:www.geocities.co.jp
&error("エラーメッセージ");
としてサブルーチンを呼びだすと、
( 特殊配列 @_ の0番目の要素だから $_[0] )
エラーメッセージが $_[0] に入って参照するようになってるよ。
こういうエラーのサブルーチンはよく見かけるね。
ぜひ使えるようにしようね。
次回は、環境変数について勉強するね。
947: 03/03/19 15:36 ID:??? AAS
うん、遅くなってごめんね
ボクも今、PHPは勉強してるところなんだよね
ちょっとボクにはできそうにないよ
ごめんね
確かにこれからはPHPの時代に変わっていくかもしれないね。
elsif 、とかPerl以外にみたことないよ。。
948: 03/03/19 15:36 ID:??? AAS
俺の鯖、CGI使えんのだが…お奨めはあるかね。
949: 03/03/19 15:36 ID:??? AAS
Python だと elif
PHP では、 elseif, else if
Perl で、無理に独自のスタイルに馴染まなくても
C ライクなプログラミングも出来るよ。
950: 03/03/19 15:36 ID:??? AAS
ソースのHTMLが解釈されて見にくいぽ。。。
951: 03/03/19 15:37 ID:??? AAS
メリークリスマス
あゆタン
952: 03/03/19 15:37 ID:??? AAS
ヘッダのContent-Typeを無視して勝手に中身を判断する
IEを恨みましょう。
953: 03/03/19 15:37 ID:??? AAS
>Perl で、無理に独自のスタイルに馴染まなくても
>C ライクなプログラミングも出来るよ。
独自スタイルを使わずしてPerlは動くのか?
C知らずしてCライクは無理だろ。もうちと考えてかけよ。
954: 03/03/19 15:37 ID:??? AAS
(´・ω・`)
955: 03/03/19 15:37 ID:??? AAS
年末年始は来てくれないのかなぁ。サイトも更新中みたいだし。
956: 03/03/19 15:37 ID:??? AAS
ヒキコモリヲタのくせに生意気だな。
957: 03/03/19 15:38 ID:??? AAS
オマエモナー
958: 03/03/19 15:38 ID:??? AAS
elsifじゃなかったっけか?
959: 03/03/19 15:38 ID:??? AAS
Pythonが?
960: 03/03/19 15:38 ID:??? AAS
〃┏━━
|. ノノソハ)))
(\リリ ´ー`)リ < 環境変数 (1)
(ニE(#つo⊂#)
環境変数っていうのを勉強するね。
環境変数は、 %ENV っていうハッシュに入ってるよ。
特に何もしなくても、実行すると自動で使えるよ。
これは、プログラムのどこでも使える、グローバル変数だよ。
じゃあ、全部の環境変数を表示してみようね。
foreach (keys %ENV){
print qq{$_:$ENV{$_}<br>\n};
}
ここで出てきた、 keys について説明すると、
「ハッシュのキーを全部とりだす」っていう感じだよ。
このへんはまた今度やろうね。
よく使う環境変数を説明するね。
$ENV{REMOTE_ADDR} : リモートアドレス(IP)が入ってるよ。
$ENV{REMOTE_HOST} : リモートホストが入ってるよ。
$ENV{HTTP_USER_AGENT} : 使ってるブラウザとかのデータが入ってるよ。
$ENV{HTTP_REFERER} : そのページへのリンク元アドレスが入ってるよ。
こんな感じかな。
次回は他の環境変数と、スペースがあまったら実用例を書いてみるね。
961: 03/03/19 15:38 ID:??? AAS
あけましておめでとう、今年もよろしくね
無料サーバかな?
規約違反するなら infoseek かトクトク
規約違反しないなら XREA がいいと思うな
Python なんて言語聞いたことない…
他は聞いたことあるけど。。
ボクもよくわからなかったんだけど410さんが言うにはIEの仕様みたいだね・・・
これはしかたないね
今は、あけましておめでとう、っていう時期になっちゃったね
ごめんね
見てくれてたのかな、ありがとうね
これからできるだけ顔を出したいと思ってるんだけどね
最近いそがしくて・・
962: 03/03/19 15:38 ID:??? AAS
あけおめ、ことよろ、ガンガレ
963: 03/03/19 15:39 ID:??? AAS
あゆタン
964: 03/03/19 15:39 ID:??? AAS
〃┏━━
|. ノノソハ)))
(\リリ ´ー`)リ
(ニE(#つo⊂#)
965: 03/03/19 15:39 ID:??? AAS
〃┏━━
|. ノノソハ)))
(\リリ ´ー`)リ < 環境変数 (2)
(ニE(#つo⊂#)
他の環境変数だよ。
環境に依存するものとか、まったく使わない、と思うのは省いたよ。
$ENV{REQUEST_METHOD} : リクエストされたメソッドだよ。普通は GET か POST だよ。
$ENV{HTTP_HOST} : そのスクリプトが動作してるサーバのアドレスだよ。
$ENV{QUERY_STRING} : xxx.cgi?xxxx っていう感じでアクセスされたら、 ? 以降の文字が入ってるよ。
$ENV{CONTENT_LENGTH} : 送られたデータの総容量だよ。
$ENV{HTTP_COOKIE} : クッキーの情報がはいってるよ。
あとは、プロキシの判断をするときに、
HTTP_CACHE_INFO HTTP_FORWARDED HTTP_IF_MODIFIED_SINCE
HTTP_PROXY_CONNECTION HTTP_VIA HTTP_X_FORWARDED_FOR
とかの環境変数を目安にすることもあるね。
じゃあ、次回は、掲示板に書き込んだ人のリモートホストを解析して、
保存するように改造してみるね。
※ $ENV{REMOTE_HOST} では取得できないサーバーが最近増えてるよ。
こんなサーバーは、 gethostbyaddr 関数を使わないといけないんだけど、
使い方はまた今度説明するね。
gethostbyaddr 関数も使えないサーバーもあるらしいよ。。
こんなサーバーは(たぶん)どうやってもホスト名は取得できないよ。
わからないことがあったら、サーバーの管理人さんに聞いてね。
966: 03/03/19 15:39 ID:??? AAS
おめでとう、今年もよろしくね。
ん?なに?
Janeで読んだら「ここ壊れてます」、って言われる
なんでだろう
967: 03/03/19 15:39 ID:??? AAS
取得するときになんか障害が起きたから。
968: 03/03/19 15:39 ID:??? AAS
誕生日おめでとう>あゆあゆ
969: 03/03/19 15:40 ID:??? AAS
(´Д⊂ヽ・゚。 ウワァァァァアァァン あゆあゆ〜
970: 03/03/19 15:40 ID:??? AAS
???
971: 03/03/19 15:40 ID:??? AAS
そういや1月7日はあゆちゃんの誕生日だったっけ。
おめでと〜。
関係ないけど、
このスレでの「月宮あゆ」は共有コテにして、トリップだけ別々にすればいいと思うが。
俺は「C言語CGI」スレの住民だけど、あゆのレスが面白くてこっちにもいてみたり。
972: 03/03/19 15:40 ID:??? AAS
つぅかnobodyさん−>月宮あゆ
を提唱しようではないか。と。
取りあえず次スレはWebProg総合スレにして欲しいっす。
初心者スレとかも良いかもね。
973: 03/03/19 15:40 ID:??? AAS
〃┏━━
|. ノノソハ)))
(\リリ ´ー`)リ < 環境変数 (3)
(ニE(#つo⊂#)
じゃあ、掲示板に書きこんだ人のホストを記録するよ。
簡単に言うと、ログファイルに記録すればいいんだけど、
ログファイルにそのまま記録しちゃうと、読む人にホストが見えちゃうんだよね。
たぶんここにいる人たちはホスト開示、っていうのは嫌だと思うんだ。
コメントにする、っていうのも、ソースを見られたらばれちゃうよね。
じゃあ、こんなことをしてみよう。
書きこむときに
<a href='mailto:メール'>名前</a>>メッセージ
っていう書き方をやめるんだ。こうじゃないとホストが筒抜けになっちゃうからね。
じゃあ、ホストを記録できるようにするには、
<a href='mailto:メール'>名前</a>>メッセージ(ホスト)
みたいにして、表示するときに消してやるといいよ。
表示する欄をいじってみるね。
foreach (@log){
$_ =~ s/\([\w\.-]\)\n$//;
print "$_<hr>\n";
}
でも、このままだと穴があるよ。
行数が入らないから次回にまわすね。
974: 03/03/19 15:40 ID:??? AAS
なぁ、データフォーマットの時点でなんか痛くない?
975: 03/03/19 15:41 ID:??? AAS
うーん・・・
できればsplitあたりを使って今回やりたかったんだけど
行数が入らないからフォーマットは次回まわしかな
976: 03/03/19 15:41 ID:??? AAS
俺はっす。
重要な語句が抜けてますた(*´Д`)
質問に「答える人達が」共有であゆコテを使おうってことを言いたかったんだ。
「◆XalkKQX1is」あゆ一人だけだと、負担がかかるんじゃないかと思ったから。
気の回しすぎだったらごめん。
軽い気持ちで吊ってくるっす。
977: 03/03/19 15:41 ID:??? AAS
ィ`
978: 03/03/19 15:41 ID:??? AAS
それなら、AYUAYUっていうトリップ探して付けてみたら?
そっちの方が雰囲気出るかも
ただ、◆Xalk..も◆AYUAYU..も掲示板でpassを晒したら、
関係ない奴が偽物として入ってくると言う痛い罠
passの配布方法はどうするの?
979: 03/03/19 15:42 ID:??? AAS
パスワード パスと呼ぶ奴 厨房さ
980: 03/03/19 15:42 ID:??? AAS
password path
981: 03/03/19 15:42 ID:??? AAS
そのためわざわざ英字で書いたんだけど....
自分ダメダメっすね(^.^;
982: 03/03/19 15:42 ID:??? AAS
共通トリップ付けるのに偽物がどうこうとか言うなら
いっそトリップ付けなきゃ(ry
もしくはID表示させれば(ry
983: 03/03/19 15:43 ID:??? AAS
とりあえず、あゆが来るまで保守
984: 03/03/19 15:43 ID:??? AAS
(^^)
985: 03/03/19 15:43 ID:??? AAS
あゆあゆ.com.うぐぅ・・・。(^−^)
986: 03/03/19 15:43 ID:??? AAS
あゆage
987: 03/03/19 15:43 ID:??? AAS
COBOLってどうなんすか、、、
いまどき(仕事以外で)使ってる人いるんすかねえ、、、
988: 03/03/19 15:43 ID:??? AAS
全部読んだが全く知識のない自分には当然全く分からない
電2>基礎から丁寧に説明してくれるので非常に分かりやすい
989: 03/03/19 15:44 ID:??? AAS
電2に載るのはうれしいけど、肝心のあゆあゆが降臨してくれないからなぁ
降臨きぼーん
990: 03/03/19 15:44 ID:??? AAS
ヲタドモが騒いでるな
電2ってなによ
991: 03/03/19 15:44 ID:??? AAS
電波2ちゃんねる
992: 03/03/19 15:45 ID:??? AAS
1は食い逃げの常習犯なので逮捕します
993: 03/03/19 15:45 ID:??? AAS
通りすがりのたい焼き屋さんが住むスレはここですか?
994: 03/03/19 15:45 ID:??? AAS
〃┏━━
|. ノノソハ)))
(\リリ ´ー`)リ < ログファイル (1)
(ニE(#つo⊂#)
前回はホストの記録をやってみたわけだけど、実は拡張子が、
.cgi とかじゃないファイルは、外部から参照されちゃうことがあるんだ
(でも、基本的にサーバーの設定に依存するよ)
log.cgi か何かにリネーム(名前を変更)して、スクリプトも少し
書き直したらこの問題は解決されるね。
じゃあ今回は、少し重い掲示板を作る、っていう想定でやってみるね。
ここでは表示欄にテーブルを組ませたりするよ。
ちょっとここで考えてみると、前回までと同じように、ログファイルに
書き込んでると、容量がどんどん大きくなっちゃうよね。
それは困る、っていうことで、一般的な掲示板では、【区切り文字】を
使って、名前、とかの要素を区切って保存してるよ。
2ちゃんねるでもこれは同じだよ。
2chスレ:php
名前<>E-mail<>投稿日<>本文<>(サブジェクト)
っていう感じに <> で区切られて保存されてるのがわかると思うよ。
区切り文字は、 <> が一番メジャーで、次に , とか : とか | を見るね。
別に何でもいいんだけどね。でも、本文にその区切り文字があると、
そこで区切られちゃうから、それを避けるようにすればいいね。
じゃあ、今回は
名前<>E-mail<>投稿日<>本文<>ホスト
っていう形式でやってみることにするね。
995: 03/03/19 15:45 ID:??? AAS
うーん・・
ボクは別にそれでもいいけど
結構大変な仕事を継続してやってくれる人はいるかな…?
いるならボクは大歓迎だよ
トリップのキーはすぐに割れそうな気がするキーなんだけど…
えっと、他のスレでもこのトリップ使ってるから、
公開するつもりはあまりないよ、ごめんね
COBOL…?
ごめん、聞いたことないよ。。
えっ?!
今みてみたけどホントに掲載されてるね
うれしいよ、今度からも頑張るから応援してね
そんな難しいこと書いてるかなぁ…
どのへんから分からないのか教えてほしいな
遅くなってごめんね
スレ違いだよっ!
996: 03/03/19 15:46 ID:??? AAS
あゆあゆ降臨
キタ─wwヘ√レvv~(゚∀゚)─wwヘ√レvv~─ !!!
俺はスローペースでもOK
てか、あゆあゆは一人であとは普通に教えあえばいいと思うよ。
997: 03/03/19 15:46 ID:??? AAS
月宮あゆの中の人も大変だな。
998: 03/03/19 15:46 ID:??? AA×
999: 03/03/19 15:46 ID:??? AA×
1000: 03/03/19 15:46 ID:??? AAS
月宮あゆ ◆XalkKQX1is つまらんぞ。
シロウトがでたらめばかり書くな。
1001: 1001 Over 1000 Thread AAS
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.047s