ぼくよくわかんないけど # 入力内容を整理 $in{'word'} =~ s/ / /ig; とかきいたことがあるよママ
953 :
nobodyさん :02/07/25 22:32 ID:bgz0ge4n
な ぜ あ げ る?
955 :
nobodyさん :02/07/26 01:49 ID:0BDmH9hb
age
>>952 全角空白文字に大小文字の区別は(以下略)
957 :
nobodyさん :02/07/26 19:45 ID:kVw69kF2
>>948 #大文字小文字区別無し
if (index($_,$pair) >= 0) {
↓
if($pair =~ /$_/i){
半角全角区別無しは一旦 &jcode'h2z_sjis(*value)とかで両文字列を
統一してから照合すりゃ良いんじゃないかな。重そうだけど。
958 :
948 :02/07/26 23:30 ID:???
>>957 ありがとうございます。
それは上の文を下の文に書き換えればよいのでしょうか。
書き換えてみたのですが上手く動かないのです…
(何も検出されなくなってしまいました)
とにかく辞書や勉強スレなども見て、自分でもいろいろやってみます。
大きく前進できたと思います。
ありがとうございました。
959 :
957 :02/07/27 00:03 ID:pvFK+xGB
>>958 ああごめん、逆だ。
if($pair =~ /$_/i){
じゃなくて
if($_ =~ /$pair/i){
だ。つーかそんなら
if(/$pair/i){
か。
掲示板にカキコがあった際、内容をメール通知してくれるような プログラムが欲しいわけだが。
963 :
948 :02/07/27 19:01 ID:???
>>959 =957
上手くいきました!ありがとうございます!
964 :
nobodyさん :02/07/27 23:40 ID:DH9H4W07
965 :
nobodyさん :02/07/27 23:46 ID:6EI34UHG
>965 ログファイル名を変えられるなら、 例えば"ffwatch.cgi"、"fflog.cgi"にするのが吉。 これなら.htaccess触らないで済む。
967 :
nobodyさん :02/07/28 04:02 ID:W8D+zAzJ
CSS で font-size を指定するとか。。
>>968 なんかやってたらできました(w
すんまそん。ありがとうございました。
>>967 font sizeいじっても変わらないなら
すでにCSSで固定されてんじゃないの?
見てないから知らんが。
つーかtxtでUPされてないもんは見る気もせんが。
Web製作板から来たって話だけど向こうで合ってるよ。
プログラムの部分じゃない以上、ここは板違い。
>>965 @enc = ('euc', 'sjis'); # 日本語コード
# --------------------------------------
# パスワード認証
$pass = '';#好きなパスワードを入れる
if ($pass ne "") {
&decode;
if ($in{'pass'} ne "" && $pass ne "$in{'pass'}") {
&error("パスワードが違います");
}
elsif ($in{'pass'} eq "") {
&header;
print "<center><h4>パスワードを入力して下さい</h4>\n";
print "<form action=\"$script\" method=\"POST\">\n";
print "<input type=password name=pass size=6>";
print "<input type=submit value=' 認証 '></form>\n";
print "</center>\n</body></html>\n";
exit;
}
}
# ======================================
# 手続き
# --------------------------------------
こんな感じに付け加える。
ログを書き込むファイルの拡張子もcgiにするといいかも
972 :
965 :02/07/28 14:52 ID:J7Vy5sYd
>966 ありがとうございます。ソース見るとファイル名で判ってしまうので…。 >971 ありがとうございます。お手数おかけしてすみません。。 リプトを追加したところffwatchの方に500エラーがでました。 エラーチェックスクリプトでチェックしたところ以下の部分が エラーと表示されました。 syntax error at (eval 1) line 37, near "? if ($in{'pass'} ne "" && $pass ne "$in{'pass'}") { &error("パスワードが違います"); } elsif ($in{'pass'} eq "") { ? print" Unmatched right bracket at (eval 1) line 44, at end of line syntax error at (eval 1) line 44, near "} }" どうしたらいいでしょうか…? 宜しくお願いします。
973 :
971 :02/07/28 20:15 ID:Di7q+S2L
今、スクリプトをダウソして試してみたけどそれで動いたよ よけいなトコを消したんじゃないの? @enc = ('euc', 'sjis'); # 日本語コード # -------------------------------------- から # ====================================== # 手続き の間をコピペすればいいんだけど、 もう1回確かめてみ
974 :
971 :02/07/28 20:20 ID:???
976 :
965 :02/07/28 22:17 ID:???
>971 度々すみません。 うーん…貼り付けて貰ったものをコピペして使ったのですが、 何がいけなかったのか…。見比べてみてもどうも判りません…。 アップして頂いたものを使わせて貰ったところ、正常に稼動しました。 どこがいけなかったのか、もう一度ちゃんと見直してみます。 本当にどうもありがとうとざいました!
文字コードが違ったのでコピペしたら・・・ って可能性は?
978 :
965 :02/07/28 22:47 ID:???
文字コード…かちゅを使ってるので、何も気にせずにそのまま コピペして…TeraPadで保存時にEUCにしてたんですが…。 そうか…文字コードの可能性もあるんですね…。 するとコピした部分だけ別のテキストに保存。 その後文字コードを確認すればよかったんですね…。 そうか〜。
>>975 古いsendmail の引数ですね。これで動いてるんですか。
$sendmail -t -oi -i -f $mailto
↓
$sendmail -t -f $from
にしとけ。
981 :
975 :02/07/29 19:42 ID:???
>980 さん 遅くなりました。 さっそく試してみます。
記念パピコV(^o^)V
すいません皆さん、まだ改造素人です。よろしくお願いします。 openしたデータファイル 10<>タイトル<>カデコリ<>本文<>2002/08/01 (Thu)<>100000<>hoge<> 9<>タイトル<>カデコリ<>本文<>2002/08/01 (Thu)<>100000<>hoge<> 8<>タイトル<>カデコリ<>本文<>2002/08/01 (Thu)<>100000<>hoge<> 7<>タイトル<>カデコリ<>本文<>2002/08/01 (Thu)<>100000<>hoge<> ・ ・ ・ 1<>タイトル<>カデコリ<>本文<>2002/08/01 (Thu)<>100000<>hoge<> の上の三行だけを取得したいのです。 どのようにしたらいいのでしょうか?よろしくお願いします。
#ログファイルを読み込み専用モードでオープン open(DATA,"$logfile") || exit; # @dataに格納し、ファイルを閉じる @data = <DATA>; close(DATA); すると$data[0]には1行目が、$data[1]には2行目が、$data[2]には3行目が格納されています
986 :
nobodyさん :02/08/01 04:16 ID:3u+0D44D
>>986 $com =~ s/(>>([\d+]))/<a href=\"$script?mode=ref_res&no=$2\" target=\"_blank\">$1<\/a>/g ;
ref_resのサブルーチンは自分で作ってね。
988 :
987 :02/08/01 13:20 ID:???
$com =~ s/(&gt;&gt;([\d+]))/<a href=\"$script?mode=ref_res&no=$2\" target=\"_blank\">$1<\/a>/g ;
989 :
987 :02/08/01 13:30 ID:???
$com =~ s/(>>([\d]+))/<a href=\"$script?mode=ref_res&no=$2\" target=\"_blank\">$1<\/a>/g ; ( ゚д゚)鬱
elsif ($mode eq 'ref_res') { &ref_res; }
sub ref_res {
&header;
open(IN,"$logfile") || &error("Open Error : $logfile");
while (<IN>) {
($no,$date,$name,$mail,$sub,$com,$url) = split(/<>/);
if ($in{'no'} eq $no) {
if ($mail) { $name = "<a href=\"mailto:$mail\">$name</a>"; }
if ($autolink) { &auto_link($com); }
if ($refcolor) { $com =~ s/([\>]|^)(>[^<]*)/$1<font color=\"$refcolor\">$2<\/font>/g; }
$com =~ s/(>>([\d]+))/<a href=\"$script?mode=ref_res&no=$2\" target=\"_blank\">$1<\/a>/g ;
print "<DL><DT><hr>[<b><a name=\"$no\">$no</a></b>] <font color=\"$sub_color\"><b>$sub</b></font> ",
"投稿者:<b>$name</b> 投稿日:$date ",
"<br><br><DD>$com";
print "<P><a href=\"
http://$url\ " target=\"_blank\">
http://$url</a >" if ($url);
print "<br></DL>\n";
last;
}
}
close(IN);
print "</body></html>";
exit;
}
991 :
nobodyさん :02/08/01 14:51 ID:ZXIYAq1T
>>985 読むだけで全部配列に入れるな
>>984 以下の全部、又は欲しいとこだけ考えて組み込みな
####
$start_no = 0;#何行目から取得するか
$last_no = 3;#$start_noから数えて何行目まで取得するか
####上二つは外部からの入力?####
####作業準備
$t_datcount = 0;#作業用カウンタ(トータル数
$datcount = 0;#作業用カウンタ(配列に加えた数
####作業開始
open(DATA,"$logfile");#データ開く
while(<DATA>){#一行づつ処理
$t_datcount++;#行数をカウント
next if($t_datcount < $start_no);#指定した行数までスルー
if($datcount < $last_no){#指定した行数まで取得
push(@log,"$_");#現在の行を配列に加える
$datcount++;#加えた数をカウント
}
last;#加え終わったら即抜け。全ログ行数も知りたきゃこれは外す
}#次の行へ
close(DATA);データ閉じる
#取得した行は@logの中
992 :
991 :02/08/01 14:56 ID:???
訂正 × last; ○ }else{last;}
記念パピコV(^o^)V
記念パピコV(^o^)V
996 :
nobodyさん :02/08/04 20:49 ID:exw5uZtl
a
i
998 :
:02/08/04 20:50 ID:???
u
999 :
:02/08/04 20:50 ID:???
e
1000 :
:02/08/04 20:50 ID:???
うんこ1000個
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。