自作CGIを評価するスレ (672レス)
上下前次1-新
582: 2005/06/06(月)23:03 ID:??? AAS
>>581
お前の親父ダサイな
583: 2005/09/21(水)17:05 ID:54UaWl8q(1) AAS
age
584: 2006/05/18(木)17:31 ID:Ip4qBE+B(1) AAS
外部リンク[zip]:c.hibi.info
どなたか評価(清書?)お願いします_ _
指定されたスレの中から前日から当日までの既定の時間にあるレスを抽出して、
そのレスから株価コードを抜き出し株価の前日比、前日比率でソートしランキングを作成した後スレに書き込むツールです。
2chへの書き込み時のCookiee処理に曖昧な点があるのと、処理の最適化をして貰えると嬉しいです。
宜しくお願いします_ _
585(2): 2006/05/18(木)22:33 ID:??? AAS
他のスレから来ました。
Perlで他のサイトを取得して表示したいと思っています。
(著作権侵害とかそういうことをしたいのではないです)
お時間のある方にお願いしますが、次のコードで@niftyのトップページを取得してみたら
どうなるか教えていただけませんでしょうか?
print "Content-Type: text/html\n";
print "\n";
use LWP::Simple;
print get( '外部リンク:www.nifty.com );
私のところだと、ブラウザ上での表示がぐちゃぐちゃになるんですが…。
586: 2006/05/18(木)22:56 ID:??? AAS
>585
マルチポストすんな
587: ◆AOxf8.Tmck 2006/05/18(木)23:03 ID:??? AAS
>>585は私じゃないです。スルーしてください。
588: 2006/06/06(火)15:21 ID:Re1RmuFG(1) AAS
簡易予定表のようなものを組んでみたんですが、なんだかモッサリしてる気がします。
もっと簡潔に書けるような気がするんですが自分ではこれが限界でした。
あと、ファイルロックのやり方が合っているのか自信がありません。
一応動いていることは動いているんですが、問題はないでしょうか。
改良すべき点、根本的にこういう書き方に直した方が良い、とかあればアドバイスお願いします。
大まかな内容は以下のようなものです。
予定として保存する内容は「予定日(月と日)」と
「予定内容(長くても200バイト程度)」の2つでフォームから渡します。
予定を保存するファイルは月単位で作成します。
例えば2006年6月の予定の場合なら「200606.txt」というファイル名です。
省11
589(4): 2006/06/06(火)15:22 ID:??? AAS
# 保存するファイル名
$a = sprintf("%04d%02d",$YEAR,$MON)
$file = "$a.txt";
# 月から日数を出す
if($MON == 1|3|5|7|8|10|12){
$m = 31;
}elsif($MON == 4|6|9|11){
$m = 30;
}else{
if($YEAR % 4 ==0){
省8
590: 後半 2006/06/06(火)15:23 ID:??? AAS
# 該当する月のファイルがなければ作成
if(!open(IN,"$file")){
open(OUT,">$file")
flock(OUT,2);
print OUT $date;
close(OUT);
}
open(IN,"$file");
flock(IN,2);
@A = <IN>;
省17
591(1): 2006/06/06(火)15:45 ID:??? AAS
>>589
まだちゃんと読んでないが…。
>if($MON == 1|3|5|7|8|10|12){
>}elsif($MON == 4|6|9|11){
これって比べてるのは、両方とも $MON == 15 だよね。
どっちの条件にも入らないと思うけど…正しく動作してるの?
592(1): 2006/06/06(火)15:51 ID:??? AAS
>$a = sprintf("%04d%02d",$YEAR,$MON)
セミコロンは?
動作するヤツうp
593: 2006/06/06(火)15:52 ID:??? AAS
ビット演算子を使っているんだ。
高度だな。
594(1): 2006/06/06(火)16:09 ID:??? AAS
switch文を使うと見やすいんじゃないかな?
use Switch
switch ($MON) {
case [1,3,5,7,8,10,12] { $m = 31 }
case [4,6,9,11] { $m = 30 }
case [2] { $m = $YEAR % 4 ? 28 : 29 }
else { print "そんな月知らん" }
}
595: 589 2006/06/06(火)16:39 ID:??? AAS
レス遅くなりました。すみません。
該当部分を切り出して動作するコードをUPしてきます。
596(1): 589 2006/06/06(火)17:02 ID:??? AAS
外部リンク[zip]:up.isp.2ch.net
UPしました。パスは「589」です。
日付のところは594さんのアドバイスにしたがって書き換えました。
アドバイスの方よろしくお願いします。
597: 589 2006/06/06(火)17:11 ID:??? AAS
>>591>>592
コードの一部分だけ抜き出してできるだけ短く書こうとしたので
分かりにくかった&書き損じがありました。すみませんでした。
>>594
perlでもswitchが使えるとは知りませんでした。
598: 2006/06/06(火)17:20 ID:??? AAS
いやperlではswitchは使えない。
599: 2006/06/06(火)17:24 ID:??? AAS
Switch なんてモジュールがあるのか知らんかった。
600: 2006/06/06(火)18:59 ID:??? AAS
cgi-lib.pl ktkr
601: 2006/06/07(水)00:26 ID:??? AAS
PerlはPHPとは違ってCPANを探せば考えられる大体の車輪は既にある。
上下前次1-新書関写板覧索設栞歴
あと 71 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.010s