« 2008年05月 | メイン | 2008年07月 »

2008年06月23日

javascript 配列 form []

form を 配列で処理する場合のJSからの扱い方

<input name="sendm[]" type="checkbox" id="sendm[]" value="1">

<input name="sendm[]" type="checkbox" id="sendm[]" value="2">

などの場合

po = document.fm1.elements["sendm[]"];
alert(po.length);

でアクセス可能

投稿者 muuming : 10:53 | コメント (0)

2008年06月19日

javascript中にアサインでエスケープ

jsにアサインするときエスケープで苦労したのでメモ

onClick="do_cancel({$mdata.id},'{$mdata|escape}')">

これだと 不正'文字"列 という文字列くるとJSこける

onClick="do_cancel({$mdata.id},'{$mdata.nname|smarty:nodefaults|escape:"quotes"|escape:"html"}')">

にて何とか解決

投稿者 muuming : 16:10 | コメント (0)

2008年06月17日

ほぼ日本からのみアクセス許可

以下のスクリプトをつくた

rm -f delegated-apnic-latest

wget -q ftp://ftp.apnic.net/pub/stats/apnic/delegated-apnic-latest
if [ -f "delegated-apnic-latest" ];then
cp htaccess_org.txt .htaccess_edit
echo deny from all >> .htaccess_edit
cat delegated-apnic-latest | grep ipv4 |grep "|JP|"| awk -F "|" '\
$5==128 {print "allow from "$4"/25"} \
$5==256 {print "allow from "$4"/24"} \
$5==512 {print "allow from "$4"/23"} \
$5==1024 {print "allow from "$4"/22"} \
$5==2048 {print "allow from "$4"/21"} \
$5==4096 {print "allow from "$4"/20"} \
$5==8192 {print "allow from "$4"/19"} \
$5==16384 {print "allow from "$4"/18"} \
$5==32768 {print "allow from "$4"/17"} \
$5==65536 {print "allow from "$4"/16"} \
$5==131072 {print "allow from "$4"/15"} \
$5==262144 {print "allow from "$4"/14"} \
$5==524288 {print "allow from "$4"/13"} \
$5==1048576 {print "allow from "$4"/12"} \
$5==2097152 {print "allow from "$4"/11"} \
$5==4194304 {print "allow from "$4"/10"} \
$5==8388608 {print "allow from "$4"/9"} \
$5==16777216 {print "allow from "$4"/8"} \
$5==33554432 {print "allow from "$4"/7"}' >> .htaccess_edit

echo "allow from 133.0.0.0/8" >> .htaccess_edit
echo "" >> .htaccess_edit
echo "allow from all" >> .htaccess_edit
echo "
" >> .htaccess_edit
mv .htaccess_edit .htaccess
fi

133は日本のIP管理の下にないらしい。他にもあるが
詳細がわからないので割愛
↓参考
http://www.nic.ad.jp/ja/ip/hr/

投稿者 muuming : 18:46 | コメント (0)

2008年06月12日

国別IP

ネットで使用されるIPの割り振りはそれぞれ管理しているところがある。

http://memorva.jp/internet/spam_virus/spam_ip_address_asia.php

↑参考

んでもって
アジア関係は

http://www.apnic.org/

が管理しており

http://www.apnic.org/info/reports/index.html

にて最新を取れる

apnic|JP|ipv4|60.56.0.0|65536|20040615|allocated
JP 日本に
60.56.0.0 から
65536 個 割り当て

ってことらしい
60.56.0.0/16かな?

これを元に日本からのアクセスのみ可サイト作成可能

投稿者 muuming : 16:54 | コメント (0)

iptables

攻撃並のアクセスを受けたらファイヤーウォールで防ごう

.htaccess での拒否だとapache までは行くから
その前に防ごう

iptables -A INPUT -s -p tcp --dport 80 -j DROP
/etc/init.d/iptables save
/etc/init.d/iptables restart
再起動はいるか知らない 入らないような気がするが・・

ルール消去は
iptables -D INPUT -s -p tcp --dport 80 -j DROP

netstat -n | grep ":80"| awk '{print $5}' | awk -F ":" '{print $4}' | sort | uniq -c

にて どっかっと来ているやつを検索

iptables -L にてルールに入っていないことを確認し
入ってなければ入れ込む

入れ込む際にはwhois ip でネットワーク全体を入れ込む
日本の回線で無ければなおさら

投稿者 muuming : 14:55 | コメント (0)

2008年06月10日

文字列を正規表現エスケープ

preg_quote(エスケープしたい文字列,デフォ以外でエスケープしたい文字)

↑perl互換の場合
# preg_grep
# preg_last_error
# preg_match_all
# preg_match
# preg_quote
# preg_replace_callback
# preg_replace
# preg_split

デフォ以外でエスケープしたい文字には / がよーつかわれる
デフォだと以下のもののみ
. \ + * ? [ ^ ] $ ( ) { } = ! < > | :

につかえるんば

投稿者 muuming : 14:01 | コメント (0)

2008年06月09日

smarty 文字まるめ

{$mitem.mov_comment|mb_strimwidth:0:15:"..."}

投稿者 muuming : 18:32 | コメント (0)

2008年06月05日

FORMの要素で配列を使った場合

form
<input name="regno[0]" type="hidden" id="regno">
<input name="regno[1]" type="hidden" id="regno">

などとした場合 javascript でこいつにアクセスするには

document.form.elements['regno[0]'] とする。

投稿者 muuming : 19:26 | コメント (0)