« 2005年11月 | メイン | 2006年01月 »
2005年12月29日エクセルで先頭の0(ゼロ)を消さないようにする
郵便番号とか電話番号など、先頭がゼロで始まる数字を扱う場合、事前にセルの書式を”文字列”とか”ユーザー定義”にしておかないと、エクセルが勝手に値を整数化してしまって「03→3」とか「0021→21」という具合に変換されてしまう。
これを回避する方法は、
・事前のセル書式指定(前述の通り)
・セルに値を入力する前に、「'」(シングルクォート)を入れる。 例)「'03」
・「="値"」とする 例)「="03"」
覚えておいて損は無いと思います。
それから「="値"」の方法であれば、自分が良く使う「HTMLのテーブルをエクセルで表示させる」場合でも使えます。
下記のサンプルをDLし、まずエクセルでファイルを開き、そして同時にテキストエディタ等でも開いて見比べてみてください。
Download file
エクセルで先頭の0(ゼロ)を消さないようにする | コメント (0) | トラックバック (0)
InnoDBがDISABLEDになってしまう(InnoDB: Error: log file ./ib_logfile0 is of different size ....)
いま使っているMySQLのバージョンは5.0。InnoDBはバージョン4.0くらいからデフォルトでサポートされるようになっているので、--without-innodbのオプションでインストールしない限りは普通に使える。
が、突然InnoDBが使えなくなってしまった。
mysql> show engines;
とやってみると、InnoDBがDisabledになってる。なぜだろう。
errログを見てみると、
InnoDB: Error: log file ./ib_logfile0 is of different size 0 5242880 bytes
と書いてある。どうやら、my.cnfにあるInnoDBのファイルサイズと、実在するファイルサイズで整合性が取れなくなっているらしい。というわけで、
ib_logfile
ibdata
この2つのファイルを削除し、mysqldを再起動したら直った。
InnoDBがDISABLEDになってしまう(InnoDB: Error: log file ./ib_logfile0 is of different size ....) | コメント (0) | トラックバック (0)
mysqldumpでスキーマだけ出力する
スキーマだけ出力し、データ(insert文)は出力したくない、という場合は下記で対応可能。
mysqldump --no-data DBNAME > mysql.dump
mysqldumpでスキーマだけ出力する | コメント (0) | トラックバック (0)
2005年12月25日JavaScriptで、文字列を動的に変更する(innerText)
aaaa
ソース↓ <p id="hoge">aaaa</p> <input type="button" onClick="hoge.innerText='bbbb';" value="文字列を変える">
こうすると、ボタンを押したら文字列「aaaa」の部分が「bbbb」に変わる。ただ、この機能はIE以外のブラウザでサポートしていなかったりするみたいなので注意が必要。
JavaScriptで、文字列を動的に変更する(innerText) | コメント (0) | トラックバック (0)
2005年12月23日windows版MySQLで、テーブル名を大文字にするには
Windows版のMySQLは、デフォルトでテーブル名等が強制的に小文字にされてしまう。たとえば「TABLE」としたいのに、「table」になってしまうなど。
これを回避するには、my.iniの[mysqld]の項に
lower_case_table_names=0
を入れてやるだけ。MySQL再起動すれば解決です。
この値のデフォルトは、Windows では 1 で、Unix では 0 です。
windows版MySQLで、テーブル名を大文字にするには | コメント (0) | トラックバック (0)
MRTGを入れた
自宅サーバーに、MRTGを入れてみました。
「mrtg linux インストール」でググってみたら、なんだか面倒そう。しかしここ最近サーバーの調子が悪かったので頑張って入れてみることにした。
http://vine.1-max.net/net-snmp+MRTG.html
このサイトを参考に(というかほぼそのまんま)、インストールを進めたところ、特に何もひっかからずすんなりインストールできました。案ずるより産むがやすし。
今回は、apt-getが大活躍。net-snmp、zlib-devel、libpng-devel、gd-develなどをapt-getでインストールしましたが、とっても楽ちんでした。
MRTGを入れた | コメント (1) | トラックバック (2)
2005年12月22日MySQL : Error #1364 : Field '%s' doesn't have a default value
ローカルで開発しようと思い、Windowsにapache、php、mysql5.0を入れた。で、アプリを動かしてみたら、エラーが出る。調べてみたらSQLエラーらしい。
Error #1364 : Field '%s' doesn't have a default value
というエラーメッセージが。
insert into TABLE (aaa, bbb) values ('AAA', '');
という具合に、''で空白を挿入しようとするのがダメらしい。普段Linux上でMySQLを使ってるときはこんなエラー出たこと無いのに。。。
ググってみても、それらしきソースは見つからない。そこでmy.iniを見てみると、なんだか見慣れないオプションが設定されている。
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
http://www.limy.org/program/db/mysql/mysql_option.html
↑このサイトによると、「他ベンダーのデータベースやバージョンの違うMySQLとの互換性の為に使用します。詳細は不明です。」とのこと。
とりあえずコメントアウトしてMySQL再起動してみたら、見事解決。。。
一体なんだったんだろう。よくわからないが、とりあえず良かった。
MySQL : Error #1364 : Field '%s' doesn't have a default value | コメント (1) | トラックバック (0)
phpからMySQLへ接続するとき「Client does not support authentication protocol requested by server」というエラーが出る
Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client
こんな感じのエラーが出た場合は、
SET PASSWORD FOR root@localhost = OLD_PASSWORD('password_str');
で解決。
パスワード暗号化の互換性で起きる問題らしい。
phpからMySQLへ接続するとき「Client does not support authentication protocol requested by server」というエラーが出る | コメント (0) | トラックバック (2)
2005年12月21日phpのfsockopen関数でhttpsのサイトへ接続する
fsockopen関数でhttpsのサイトへ接続する場合、phpを --with-openssl のオプションをつけてコンパイルする必要がある。そうすると、phpinfo の Registered PHP Streams の項目に「https」が出てくる。
それをやらずにfsockopenでhttpsサイトにつなごうとすると、「no SSL support in this build」というエラーが出てしまう。
。。。
ウェブでいろいろ調べた結果、このことはわかったのだが、どーーーしてもうまくいかない。何度コンパイルしてもダメ。
なので、
・apacheを止める
・make distcleanする
・再コンパイル
・make&make install
これをやったらうまくいった。結局、半日くらい無駄にしてしまった。。。
phpを再コンパイルする場合は、必ずapacheは止める。更に、それでもダメな場合はいったんmake distcleanしてやる。
phpの再コンパイルで詰まったら、このことを思い出すようにしよう。。。
phpのfsockopen関数でhttpsのサイトへ接続する | コメント (0) | トラックバック (0)
mysqldumpで文字コード(charset)を指定
mysqldump HOGE_DB --set-charset=ujis > HOGE.sql
という感じで、--set-charset=*** と指定してあげるだけ。
mysqldumpで文字コード(charset)を指定 | コメント (0) | トラックバック (0)
MySQL関数CASTで型変換する
select cast('-0008000' as signed);
で
-8000
と言う具合に変換できる。
asの後ろにつけられる引数は、以下の通り。
BINARY
CHAR
DATE
DATETIME
SIGNED (INTEGER)
TIME
UNSIGNED (INTEGER)
http://dev.mysql.com/doc/refman/4.1/ja/cast-functions.html
MySQL関数CASTで型変換する | コメント (0) | トラックバック (0)
ImageMagickをソースからインストールする
MT用のImageMagick。何度か失敗したが、以下の手順でうまくインストールできた。
# tar zxvf ImageMagick-6.2.5.tar.gz
# cd ImageMagick-6.2.5
# env CPPFLAGS="-I/usr/local/include" LDFLAGS="-L/usr/local/lib" ./configure
# make
# make install
# cd PerlMagick
# perl Makefile.PL
# make
# make install
ImageMagickをソースからインストールする | コメント (0) | トラックバック (0)
2005年12月20日自分で作る blog ツール
ちょっと気になってる一冊。年末年始に読んでみようかな。
自分で作る blog ツール | コメント (0) | トラックバック (0)
2005年12月19日痛恨のサーバーダウン
どうも最近、自宅鯖の調子が悪い。
「うっ!httpの反応がない!」と思ったのに、ポート8080のzopeはサクサク動いてる。apacheがおかしいかな、と思ってmod_perlを外してみたりしてたら、次は家庭内のネットワークがおかしくなったりとトラブル続き。(未だに解決したかどうかすらわからない)
そして更に運の悪いことに、サーバーダウン中にクローラーが巡回していたようで、各検索エンジンの順位が下がってしまった!!
Google:3位→6位
Yahoo:10位→圏外。。
という下がりっぷり。特にYahooが圏外になったのはイタイ。。。_| ̄|○
これまで積み重ねてきたものが一瞬にして吹き飛びました。うぅ。。(;д⊂)
SEO以前に、インフラの安定が大前提ということが、身に染みて分かりました。。。
痛恨のサーバーダウン | コメント (0) | トラックバック (0)
釣り大会で優勝!
先週末、日曜日は村の釣り大会。前作の釣り大会はバスのみが対象だったが、今作は川魚はもちろん、海魚も含めてサカナはすべて対象内。
今の時期釣れるでかいサカナといえばスズキとマグロ。というわけでこの2種類狙いで海へGO。シコシコとつり続けていたら、4匹目のスズキで記録更新。さらにそのあとも釣り続けていたら明らかにでかい魚影。マグロ出現だ。
集中して魚信を探り、確実に釣り上げる。村長のところに持っていったら250cm!そのまま時間切れで優勝決定。
翌日、ポストを開けたらトロフィーが届いていたので部屋のど真ん中に飾る。
釣り大会優勝はうれしいけど、冬の魚釣りもだんだん飽きてきた。早く季節が切り替わらないかなぁ。
釣り大会で優勝! | コメント (0) | トラックバック (0)
2005年12月16日MySQLでSQL文をコメントアウトする
select
col1,
col2,
/*hoge*/
col3
from
TABLE;
という感じで、コメントアウトしたい部分を/**/で囲うとコメントアウトできる。
MySQLでSQL文をコメントアウトする | コメント (0) | トラックバック (0)
2005年12月14日LinuxでUSBメモリを使う(お手軽バックアップ)
知り合いの自宅サーバーがクラッシュし、大事なデータがすべて消えて無くなったという話を聞いてからというもの、「バックアップをちゃんと取らなくちゃいけないなぁ」とずっと考えていた。
で、ある日突然「この、買ってはみたものの、ほとんど使ってないUSBメモリを使えばいいのでは?!」と思いつき、さっそく実行してみた。
「USBメモリ Linux」でググってみたら、いくつか参考になりそうなページが出てきた。それらによると、
# mkdir /mnt/usbfm
# mount -t vfat /dev/sda1 /mnt/usbfm/
すればいいとのこと。で、そのままやってみるけど、ダメ。うーん、なんでだろ。と思いつつ、ls /mnt とやってみたら
/mnt/ClipDrive_______-sda1/
という、見慣れない名前のデバイスがマウントされてる。
/var/log/messages を見てみたら
murasaki.usb[11800]: usb device is added
というログが。なんだかよくわからないけれど、「murasaki」というのが自動でマウントしてくれた様子だ。さっそくUSBメモリにファイルの出し入れをしてみる。さすがUSB。速い。
これですべての準備は整ったので、バックアップ用のコマンドをcronに仕込む。バックアップを取るのはmysqlのdumpデータとpublic_html以下すべてをtar.gzで固めたもの。あわせて70MB弱なのでだいぶ余裕がある(使ってるUSBメモリは128MB)。cronの実行時刻は毎早朝4時にした。
。。。
翌朝起きて、USBメモリを見てみたら、バックアップファイルたちのタイムスタンプがきっちり4時になっていた。よしよし。
USBメモリでのバックアップ、かなりお手軽なのでオススメ。最悪の事態が起こったときでも大切なコンテンツは残るので、枕を高くして寝られますw。あと、最近はGBクラスのUSBメモリも発売されてるので、画像など容量の大きいファイルのバックアップにも使えるかも。
ちなみにこの記事で使った環境は、
USBメモリ:バッファローのClipDrive 128MB
ハード:IBM NetVista M42 Slim
OS:VineLinux3.2
です。
LinuxでUSBメモリを使う(お手軽バックアップ) | コメント (0) | トラックバック (1)
Smarty Tips
◆ループが10,20,30,40...回目のときだけ特別な表示をする
{foreach from=$list item="list" name="hoge"}
{if $smarty.foreach.hoge.iteration % 10 == 0}
<tr>
<td colspan="3">10の倍数</td>
</tr>
{/if}
<tr>
<td>{$list.email}</td>
<td>{$list.id}</td>
<td>{$list.pass}</td>
</tr>
{/foreach}
Smarty Tips | コメント (0) | トラックバック (0)
2005年12月10日phpで改行コードを置換する
str_replaceで置換してやるだけでできます。
CR:
LF:
/* CR+LF -> LF */
$text = str_replace("
", "
", $text);
/* CR -> LF */
$text = str_replace("
", "
", $text);
/* LF -> CR+LF */
$text = str_replace("
",'
',$text);
phpで改行コードを置換する | コメント (0) | トラックバック (0)
2005年12月08日"ちょんまげ"と"おしゃぶり"
今日は村にファッションデザイナー(?)のグレースがやってきた。今作のグレースはファッションチェックをしてくれるということなので、さっそくお願いしてみたら62%という評価だった。
ちなみに評価をもらった後、5~6回ほどグレースに話しかけ続けると、グレースの特別コーディネイトの料金交渉になる。とりあえず1000ベルで提示してみたところ、”おしゃぶり”をもらうことができたw
ちなみに嫁さんも1000ベル提示で、かぶりもの”ちょんまげ”をもらっていた。どちらも愛嬌があって楽しいコーディネイト。前作のグレースはひたすら”車拭き”だったけど、今作はかなり楽しそう。次はいつ村に来るのか。今から楽しみだ。
"ちょんまげ"と"おしゃぶり" | コメント (0) | トラックバック (0)
2005年12月07日MySQLのINSERT ... SELECT 構文(insertで副問い合わせ、サブクエリ)
試しにやってみたら、できた。MySQL5.0です。
insert into FIRST_TABLE (fcol1,fcol2) select scol1,scol2 from SECOND_T where scol = 1;
http://dev.mysql.com/doc/refman/4.1/ja/insert-select.html
MySQLのINSERT ... SELECT 構文(insertで副問い合わせ、サブクエリ) | コメント (0) | トラックバック (4)
2005年12月06日帰ってきた司馬遼太郎を読む(MSN)
ここしばらく、司馬遼太郎を読むがMSNで17位前後をうろうろしてたんですが、定位置の3位に帰ってきた。
しかも、ただ帰ってきただけじゃなく、「"shiba-ryo.com" から得た他の結果を表示します。」というリンクのおまけがついて帰ってきた。

サイト内のインデックスされてるページをずらっと一覧表示してくれるものらしい。ページ数がある一定以上に達するとこのリンクがつく仕組みになってるのかな?
帰ってきた司馬遼太郎を読む(MSN) | コメント (0) | トラックバック (0)
2005年12月05日新要素フリーマーケット
先週末は、新要素フリーマーケットで楽しんだ。フリーマーケット期間中、自分の家や他のどうぶつの家が個人商店に早代わり。どうぶつの家へ行けば置いてある家具の買い取り交渉が出来、逆に自分の家で待機してればランダムでどうぶつが自宅へやってきて、「あれが欲しい」「これが欲しい」と言ってくる。
ちょうど不用だったマウンテンバイクがあったので、アヒル(?)のナッキーに売ってあげたら、それがそのままナッキーの家に飾られてたのが笑えたw
あと、日曜の10時前にふらりと喫茶店に立ち寄ったら、ぺりみがいた。コーヒーを飲みながら出勤前のひとときをすごしていたみたい。話しかけたら役場の仕事のグチをこぼしていたw
新要素フリーマーケット | コメント (0) | トラックバック (0)
2005年12月04日AWSが文字化け
サーバーを新調したら、MTのaws.plモジュールで文字化けするようになってしまった。ググってみたところ、どうやらPerl5.8で発生するエラーらしい。前のサーバーのPerlは古かったから大丈夫だったんだろう。
Perl5.8にはUTF-8フラグがどうのこうの、、、という問題があるみたい。なんだかめんどくさそうだったので、Perlを5.6にダウングレードして解決してしまった。
完全に枯れてると思ってたPerlも、ちょこちょこと細かい改善がされている様子。今後どんな方向に進んでいくんだろう。
AWSが文字化け | コメント (0) | トラックバック (0)
自宅サーバー入れ替え完了
自宅サーバーのハード入れ替えが完了した。結構手間取るかな、と思っていたけど、これといって大きなトラブルもなく無事終了。
ちなみに Celeron 500GHz → Pen4 2.2GHz にスペックが上がったので、かなり処理が早くなりました。たとえば、MovableTypeがmod_perlなしでサクサク動くようになった、とか。そのうちメモリも増強してもうちょっとスペック上げようと思ってます。
自宅サーバー入れ替え完了 | コメント (0) | トラックバック (1)
2005年12月02日phpでサイズの大きいファイルをアップする
phpで、ファイルをアップロードするスクリプトを書いた。
で、そのスクリプトで8.5MBのファイルをアップしようとすると途中で止まってしまってうまくいかない。
どうやら、php.iniの、
post_max_size
upload_max_filesize
が影響するようだ。
phpinfo();で見ると、デフォルトでは
post_max_size = 8M
upload_max_filesize = 2M
になってる
で、これをそれぞれ
post_max_size = 10M
upload_max_filesize = 10M
にしたら、うまくいきました。(かなり時間かかるけど)
php.ini変更したら、apacheの再起動も忘れずに。
phpでサイズの大きいファイルをアップする | コメント (0) | トラックバック (0)
2005年12月01日ようやくつりざおをゲット
ようやくつりざおをゲット。さっそく釣りに出かけると、二匹目にして幻の魚「イトウ」をゲット。たぬきちの店で値段を確認したらなんと15000ベルで買い取ってくれると言われた。しかしここはグッと我慢して博物館に寄贈だ。
そのあとはしばらく川と海で釣りを楽しんだ。タイやらブラックバスやら、いろいろ釣る。しかし今作の釣りはコントローラーが震えないのでちょっと難易度高め。ま、DSだから仕方がない。
ようやくつりざおをゲット | コメント (0) | トラックバック (0)
高額医療費支給の申請をした
11月に嫁さんが手術&入院し、医療費が合計で12万くらいかかった。嫁さんのお母さんに「高額医療費支給という制度があるから、申請するといい」と言われ、調べてみた。
1ヶ月間の医療費が7万円以上かかった場合(ただし保険適用外のものは除く)、その差額が支給されるらしい。今回のケースでは5万円くらい戻ってくるので、利用しない手はない。
国民保険の人は区役所・市役所で、社会保険の人は社会保険事務所で申請できるということがわかったので、さっそく中野区の社会保険事務所へ。窓口で聞いてみると、用紙を出して記入箇所を指定される。言われた通り記入し、領収書のコピーを添付して申請完了。振込は3ヵ月後くらいになるらしい。
入院・通院等で医療費が高額になった人はぜひ利用するといいと思います。



