2013年1月9日水曜日

phpでhtmlをpdfに変換できるライブラリ「mPDF」

mPDFというライブラリがあることを知り、さっそく試してみました。

こちらのページを参考にしました。
http://blog.syuhari.jp/archives/1992

簡単です。
htmlがpdfになります。

でも日本語が文字化けしてしまいます。

ググってみたら、バージョン5.1以降ではライブラリ本体のソースをいじらないと日本語対応できないとのこと。

http://d.hatena.ne.jp/susan-style/20120321/1332308489


こちらのページの通りに修正したら、無事日本語表示できました。

2012年12月5日水曜日

mysqlでconcatの中でcaseを使う

こういう感じです。

select
concat(
case when 1 then 2 else 3 end,
case when 0 then 4 else 5 end,
case when 1 then 6 else 7 end,
case when 0 then 8 else 9 end
) as test


これで返り値は「2569」です。

あとconcat_wsというのも便利。

select
concat_ws(
',',
case when 1 then 2 else 3 end,
case when 0 then 4 else 5 end,
null,
case when 0 then 8 else 9 end
) as test


これで返り値は「2,5,9」になります。

mysqlのgroup_concat関数が便利

http://treeapps.hatenablog.com/entry/20120530/p1

これは便利です。覚えておこう。

2012年11月5日月曜日

エクセルでセル内の特定文字列のみの書式を設定する

エクセルでセル内の特定文字列のみの書式を設定する」というのをやりたかったんですが、調べてみたところマクロを使わないと実現できないようです。

そうしたマクロを作って配布してるサイトがいくつかあって、今回はこちらを使わせてもらいました。

http://www.excel7.com/personal/personal1-4.htm

マクロを登録したり使えるようにしたりするのが少し手間でしたが、うまく動いてくれました。

MacDriveでBootcampのWin7Mac間でファイルをやり取りする

MacBookAir(BootcampのWin7)のディスク容量が不足してきたので、MacDrive 9 Standard 日本語版を買ってみました。

さまざまな機能があるソフトですが、今回はBootcampのMacとWin7それぞれのドライブ間でのファイルのやり取りが目当てです。

Bootcampでは一旦ドライブを切ると後から容量を変更するのが難しいようなので、いろいろ探してみて、MacDriveを使うのが一番確実な感じでした。
さっそく体験版を入れて試してみて、いい感じだったのでそのままDL版を購入。

とりあえずWin7ドライブにある、普段あまり使わないデータ30GBほどをMacのドライブへ退避させました。
OSの異なるドライブ間の移動で、ファイル数も容量も多かったですが、特に問題なく終了しました。

2012年11月3日土曜日

googlemaps apiでマイマップのマーカーをkmlを使って表示

googlemapsのiframe埋め込み方式でマイマップを表示してたのですが、普通にブラウザで見ると出てる商業施設の名前などが、一部の表示されません。理由はよくわかりません。

調べてみたところ、マイマップのマーカー情報がkmlで取得でき、さらにjavascript apiでそのレイヤーをかぶせることができることがわかったので、対応してみました。

googlemaps apiでのkmlレイヤーの使い方
https://developers.google.com/maps/documentation/javascript/layers?hl=ja#KMLLayers

kmlレイヤーのinfoWindowの大きさを調整する
https://groups.google.com/forum/?fromgroups=#!topic/google-maps-api-japan/Ax0GWM9Gnoc

2012年10月17日水曜日

Request Entity Too Largeエラーが出る。原因はLimitRequestBodyだった

ウェブアプリで2MBのファイルをPOSTでアップロードする処理をしたら、

HTTP 413
Request Entity Too Large

The requested resource
/test.php
does not allow request data with POST requests, or the amount of data
provided in the request exceeds the capacity limit.


というエラーが。
「Request Entity Too Large」でググるとnginx関係のエラーが出てきますが、ウチのサーバーはnginxなんて入れてないので、おかしいな~と思ってました。

で、httpdのエラーログを確認すると、

Requested content-length of 2073274 is larger than the configured limit of 1024000


と出てました。
なんか制限かけてるようです。

とりあえずhttpd.confで「1024000」を検索かけてみたところ、

LimitRequestBody 1024000


という記述が。明らかにこれが怪しいです。

ゼロをひとつ増やしてhttpdを再起動したら、エラーが出なくなりました。

なんの目的でLimitRequestBodyを設定したのか記憶にないのですが、テスト環境なんで消し忘れとかだと思います。