Nacky - Snowland.net

Nacky(Issei Ishii)がDJ/Composerのようなふりして書き散らすblogサイト

Info

Nacky - Snowland.net - blogを移転しました

Archives

2010-09-30

UTF-8から変換できない特殊文字

webサイトをUTF-8で作っても,そのシステムから出すメールはISO-2022-JPじゃなきゃいけないようなことがよくあります.
(UTF-8はメーラーが対応してないとかで.いい加減に無くなっていいと思うんだが)
さらにはUTF-8だと表示フォントが変わるので違うとか言ってくるクライアントもいると思います.

で,UTF-8で丸数字(①とか)やカッコ株(㈱)を入力されると,その後メール本文で文字化けが起きます.
ISO-2022-JPだって丸数字とかカッコ株あるじゃーん,と一瞬思ってしまいますが,それは各メーカーの独自拡張です.

そんなわけでPHPでmb_convert_encodingしても文字化けしますし,iconvを通しても特殊文字変換できないよ!と言われて処理が止まります.

じゃぁどうすんのよ…
ということで今回はあらかじめそのへんの文字を変換してしまうことにしました.
㈱ は (株) と書けばいいし,① は (1) で代用することにします.

しかし文字コード表作るの面倒だなーと思ったら,やっぱり既にありました.感謝.

UTF-8で変換できない機種依存文字を置換する - memo.xight.org

ただしリンク先のコード '\xE3\x8B\xB0' の部分がシングルクォートなので,ダブルクォートにしないと正しく動きません.

これでもまだ見た目が違っちゃうよ!とかいうクライアントがいたら,がんばって説得しましょう….

参考
機種依存文字とUnicode - WebStudio
17:51:23 - nacky - Category: Com/Tech ( PHP ) - No comments - No Trackbacks

2010-09-28

USBブートでCentOSをインストールする

DVDドライブがないPCにCentOSを入れることになってので,USBブート.
ターゲットは今となっては懐かしい,ATA100(IDE)のHDDです.もう秋葉でも売ってるところが少ないんじゃないのか.

とりあえずこちらを参考に.
usbブートでcentosインストール完了 - De la petite monnaie aussi

用意するもの
・netinstallのiso
・syslinux
・USBメモリ
・適当なOS(今回はWindows7 64bit)

手順
・USBメモリをFAT32でフォーマット
・netinstallのisoをマウント,isolinuxディレクトリの中身をUSBメモリにコピー
(マウントツールがうまく動かなかったのでvmware上のマシンでコピーした!)
・syslinux/(OS)/syslinux -ma e: で起動可能にする
(windows7でやるときはコマンドプロンプト自体を管理者権限で実行しないとエラーになる)
・あとはUSBメモリからブートしてインストール

注意点
・インストールが完了した!ということでUSBメモリを抜いてリセットしたら起動しない.ローダがない.
・USBメモリを差し直して起動したらgrubがUSBメモリに入ってる
・とりあえずシングルユーザーモードで起動して# grub --root-directory=/ /dev/hda とする
・USBメモリを抜いた状態で起動する.grubは確かに入ってるんだが,/dev/hda1 と指定されているので起動できないので手で root(1,0) を root(0,0) として起動
・/boot/grub/grub.conf を編集して0,0にする
・再起動して確認.

---
マシンが古いこともあって,色々動かなくててんぱった.
20:11:28 - nacky - Category: Com/Tech ( UNIX ) - No comments - No Trackbacks

2010-09-16

jQueryでEnterキーでのSubmitを防止する

JavaScriptでEnterキーSubmit防止ってネタは死ぬほど見るけど,とりあえずjQueryを使用してhtmlソースにあまり手を入れないような感じに.

$('input[type!="submit"][type!="button"]').keypress(function(e){
  if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {
    return false;
  }else{
    return true;
  }
});

・submitやbuttonは生かしてあるので,キーボード操作時もTABキーなりでsubmitボタンの上に移動してからspaceやEnterでsubmitできる

あとは

二重submit防止のjavascriptをjQueryで。

を組み合わせたり

submit ボタン disable 技の罠 - naoyaのはてなダイアリー

submitのnameを見て処理が変わるform対策にこちらを組み合わせたり

で,htmlソースにあんまり触れないで済みました.
07:00:44 - nacky - Category: Com/Tech ( JavaScript ) - No comments - No Trackbacks

2010-09-14

Linux上のファイルを消してしまった!

windows server 2008 R2上のHyper-Vの上のCentOS5.
ハードディスクはVHDファイル.その上でext3.

間違ってファイルを消してしまった!
即座に各種サービスを止めて電源断(バーチャルだけど)

windows7,2008R2はVHDをマウントできるとのことで,windows上からVHDをマウント.
次にPhotoRecを使ってマウントしたドライブ上からファイルを回収.

TestDisk Download - CGSecurity

30GB分のVHD内を30分ほどかけてスキャン.
しかし既にファイルが分断されていたのか,あんまり有意な結果は得られず…orz

---

とりあえず
・Windows7/2008R2はVHDをマウントできるんだなぁ
・PhotoRecは使えるけど限界はある
・バックアップは取れ

orz...

---
追記:
ext3上でファイルを消すとinode情報も残らない.
ダンプした情報もブロックサイズ毎に分けられてしまうので,1つのファイルを丸々回収ということは難しいようだ.

みたのブログ: Ext3 ファイルシステムで削除したファイルを復元について
15:03:59 - nacky - Category: Com/Tech - No comments - No Trackbacks