タグ

ブックマーク / srad.jp/~mumumu (2)

  • %00 | mumumuの日記 | スラド

    http://www.ietf.org/rfc/rfc2396.txt URI にASCII以外の値を入れる際は、16進にエンコードしなければな らないことが知られている。仮にNULL文字がエンコードされた場合、 %00 となる。 検索エンジンに入力された文字列を解析するために、URIエンコード された文字列をデコードしていたら「%00」のパターンに出会った。 まさかこんなものが検索文字列に紛れてくるとは思わなかった。。 PHP的には「ほげほげ[NULL]」と「ほげほげ」は違う文字列であるが、 PostgreSQL 的には同じと見做される。これが元でduplicate key errorとなったのだ。 $str = preg_replace('/[\000-\017]/', '', $str); として対処。 #けど、こういう行儀の悪い検索文字列の入力の類ってわざとやって #るのかどうかは

    kits
    kits 2006/12/07
    本当にGoogleのせいだろうか。/ どちらにしてもnullは通さないようにすべきのような。
  • HTML Numeric character references - mumumuの日記

    http://www.w3.org/TR/html401/charset.html#h-5.3.1 HTML中では、数値文字参照という形で、文字を表す ために「&#」に続けてUnicodeのコードポイントを 挿入することが許されている。Webページや果てはRSS においてさえ、これが挿入されているケースが存在し ている。身近なところでの良い例はEngadget Japanese があげられるだろう。 巷では、日語の文字列をこの数値文字参照に変換す るケースは結構存在している。しかし、rss2imap等で は、この逆の処理、つまり数値文字参照を文字に変換 する処理が必要である。 ---- perl -MEncode -p -i -e ' s/\&#(x)?([a-f0-9]{1,5});/ my $tmpstr = ($1) ? pack( "H*", sprintf( "%08s", "

    kits
    kits 2006/08/18
  • 1