■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■               CGI3分クッキング                                  Vol:028                          発行日: 1999年10月15日                        総発行部数:     1415部                            (1999年10月14日現在) ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ◆PR◆-------------------------------------------------------------------- ●おいしいお肉でお馴染の「いづつ屋」では、  只今100名様限定キャンペーン中。  牛タンのみそ漬けを1000円にてご奉仕中!  めちゃくちゃ美味しいお肉を、是非ご賞味下さいませ。  http://www.tanba-izutsuya.com/ --------------------------------------------------------------------◆PR◆ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ◆目次◆ ●Web新撰組ニュース ●今日の献立:ヨッ!人気者っ!!(その4) ●予告 ●はぎちゃん今日のひとこと ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ◆PR◆-------------------------------------------------------------------- ■キャリアを生かそう! 優良企業あります!! 充実の教育制度で安心派遣■ ■■■今すぐ登録へGO!■■■ 富士通系人材派遣FJBエージェント ■■ click< http://a.clickincome.net/md/dk?mid=44a0192590e4dd79a72a6f722246c6a6 > --------------------------------------------------------------------◆PR◆ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ●Web新撰組ニュース   メールを使った新しい遊びを追及する「メールで遊ぼう!」。   現在会員数が1700名を越えました。   引き続き会員募集を行っておりますので、未だの方は、   http://www.web-kyoto.com/vmail/   へGO!   Web新撰組メンバー執筆のCGI参考書。   「Perlで作る楽しいCGI」は、エーアイ出版のエーアイムックNo.237。   内容についての御質問は、新撰組ML(http://www.web-kyoto.com/ml/)へ。 ●今日の献立:ヨッ!人気者っ!!(その4)   プログラムの続きです。   今回は、書き込み部分の作成です。   が、、、前回ちょっと間違いがありましたので訂正します。   ついでに、スクリプトがちょっと長くなってきたので、前回作った if($action eq 'show'){   以下の部分をサブルーチンにしてしまいましょう。 ヨソのチャットのデータを表示させるサブルーチン ---------------------------------- A:sub Show_Html { 24: print <<"EOL"; 25: 26: 27: 28:ニセモノチャット 29: 30: 31:ニセモノチャット

32:

X1: X2:なまえ
34:かきこみ
35:EOL 36: foreach (@kakikomi){ 37: print $_; 38: } 39:print "\n"; B:} -----------------------------------------   AとBを追加してサブルーチンにしました。   間違ってたのは、X1の行で、 を追加しました。   また、X2の行(もともとの33行目)に、value=$unameを追加しました。こうし ておけば、一度書き込みをした後、名前欄には、最初に入力した名前が表示されま す。   これを入れておかないと、このCGIは、「書き込み」なのか「表示」なのかを 判別出来ません。   尚、このサブルーチンについている行番号は、前回の分と見比べる為につけて あります。今後、意味はありません。   では、本体に書き込み部分を追加します。 本体(未完成) ---------------------------------- 1:#!/usr/local/bin/perl 2: 3:$ChatURL='http://www.www.www/~kappa/chat.cgi'; 4:$ChatHost='www.www.www'; 5:$CgiName='./hninki.cgi'; 6: 7:&GetFormdata; 8: 9:if(!$FORM{'action'}){ 10: $action='show'; 11:}else{ 12: $action=$FORM{'action'}; 13: $action='show' if($action ne 'write'); 14:} 15: 16:if($action eq 'show'){ 17: &httpSend("$ChatURL","$ChatHost",1,300); 18: for($i=20;$i<=$#buf;$i++){ 19: last if($buf[$i] =~ /<\/body>/); 20: $dmy=$buf[$i]; 21: &jcode'convert(*dmy,'euc'); 22: push(@kakikomi,$dmy); 23: } 24: &Show_Html; ----------------------------------   24行目に、さっきのサブルーチンを呼びだす行を入れました。以降、前回まで と変わってきます。 ---------------------------------- 25:}elsif($action eq 'write'){ 26: $uname=$FORM{'uname'} if($FORM{'uname'}); 27: $mess=$FORM{'mess'} if($FORM{'mess'}); 28: if($uname && $mess){ 29: $ChatURL=$ChatURL . '?uname=' . $uname . '&mess=' . $mess; 30: } 31: &httpSend("$ChatURL","$ChatHost",1,300); 32: for($i=20;$i<=$#buf;$i++){ 33: last if($buf[$i] =~ /<\/body>/); 34: $dmy=$buf[$i]; 35: &jcode'convert(*dmy,'euc'); 36: push(@kakikomi,$dmy); 37: } 38: &Show_Html; 39:} 40:exit; 41: . . . (ここにsub Show_Htmlを挿入) (ここにsub time_to_exitを挿入) (ここにsub httpSendを挿入) (ここにsub openSocketを挿入) (ここにsub GetFormdataを挿入) ----------------------------------   26、27行目で、もし名前かメッセージが書き込まれていれば、$uname、$mess 変数に代入します。   そして、28〜30行目で、もし、名前とメッセージが両方とも書き込まれていた 場合のみ、接続先のチャット(つまり盗んで来るチャット)のURLに、 ?uname=なまえ&mess=かきこみ を追加します。   GETでフォームのデータを送る場合、URLの後に?name=value&name=value&name=value... という形でデータを繋げてやります。   31行目以降は、前回作った表示のみの部分と同じです。   よって、もし名前か書き込みのどちらか(又は両方)が無い場合は、データの 連結を行いませんので、表示のみ、と動作は同じになります。   以上で、出来上がりです。   次回に続く・・・。 ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ◆予告◆------------------------------------------------------------------ ●次回は、「ヨッ!人気者っ!!」の最終回です。   完成形を一挙に公開&設置いたします。 ------------------------------------------------------------------◆予告◆ ◆PR◆-------------------------------------------------------------------- ☆☆転職をお考えの方へ。ネットワークエンジニアなんていかがですか?☆☆ ◎パソナソフトが特待生を無料で募集しています。◎ click< http://a.clickincome.net/md/dk?mid=fc67b9c95e9aa52aba61d0aef335bcef > やりたいって言ったら、今すぐやりたいんだい!! いや〜んえっちぃ〜〜、、、じゃないよ、ゲームのお話し。 欲しいソフトが発売日に手元に届きます。こりゃええわい。 てなわけで、こちらにどうぞ。 http://takafumi.grabit.net/powersoft/ --------------------------------------------------------------------◆PR◆ このメールマガジンは、 Subject部が、CGI3分クッキング【Vol.番号】は、まぐまぐ様にて、 ( http://www.mag2.com/ ) Subject部が、CGI3分クッキング Vol.【番号】は、Macky様にて、 ( http://macky.nifty.ne.jp/ ) Subject部が、CGI3分クッキング番号 は、Pubzine様にて、 配布致しています。 メールマガジンの解除について まぐまぐ様の解除は、 http://www.web-kyoto.com/dp/3min/ に、削除及び登録フォームを用意致しております。 Macky様の解除は、 http://macky.nifty.ne.jp/ を参考して下さい。 Pubzine様の解除は、 http://www.pubzine.com/srchid.asp?keyword=1379 に、削除及び登録フォームを用意致しております。 ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ ◆はぎちゃん今日のひとこと◆------------------------------------------  ●メールで遊ぼう!怒濤の快進撃!   登録者1900名を突破し、2000名まであとわずか!!!   更に、専用サーバーを現在準備中。   専用サーバーが出来たら、あんなこともこんなことも・・・わくわく・・ ------------------------------------------◆はぎちゃん今日のひとこと◆ ◆お願い◆ このマガジンについてのお問い合わせは、WEB新撰組メーリングリストで、 お願い致します。 参加方法は、 http://www.web-kyoto.com/ml/ を参考にして下さい。 ◆担当者◆ 本文文責    :Web新撰組プログラマー萩原逸郎 Web新撰組  :http://www.web-kyoto.com/ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■