前回携帯サイトを作った方法だと、CakePHPのバージョンアップによって動かなくなってしまっていたので、新しい方法で作った覚書を残していきます。
今回は「CakePHP1.2ガイドブック」の携帯サイトを作成するを参考に作っていっています。
この方法だとcakeのバージョンによって動かなくなることは無いと思いますが、一応バージョンは1.2.3.8166で試してみました。
内容はほぼそのままなのですが、自分が分かりやすいようにコメントを付け加えていってます。
カテゴリー: PHP
ダウンロードしたCSVファイルが文字化けする問題
CSVファイルをダウンロードしたら文字化けするとお客様から連絡があり調べたところ、テストサイトではSHIFT_JISでダウンロード出来ていた所が何故かUTF-8でダウンロードされているようになってしまっていました。
UTF-8のファイルをSHIFT_JISで開きなおすと一応文字化けは直るのですが先頭に「・ソ」という表示が知らぬうちに付いていました。
二重送信防止プログラム
submitボタンを押した時に間違って連打で押してしまった時にデータの保存が2重でされたり、メールが2通送られてしまったりします。
今回はjavascriptで制御する方法を取ってみたので簡単に紹介します。
CakePHPでSSL認証とそうでない時の処理を振り分ける
ログインするときにSSL通信でログインするか普通の通信でログインするかを選べるようにして欲しいというお客さんの要望があったので今回はこんな感じのプログラムで対応しました。
やっている内容はログイン時にSSL通信でログインした時、Cake内の移動の際にSSL通信の場合はhttpsで移動するようにするという感じです。
tcpdfでIPAフォントを入れる手順の覚書
PDFを吐き出すシステムを作った時に、tcpdfがデフォルトで用意してくれている
フォントでは今回の案件に対応できなかったので、IPAフォントを使う事にしました。
以下のURLを参考に作業を進めていきました。
http://hrgs.xrea.jp/2006/08/24/how_to_use_japanese_with_tcpdf
IPAフォントは
http://ossipedia.ipa.go.jp/ipafont/
でIPAfont00203.zipをダウンロードしてくる。
展開していくつかttfファイルが出来るので、以後ipag.ttf
を使って作業をしてみる。
tcpdfをダウンロードしてきてFPDIを動かすところに配置する。
tcpdf/fonts/utils/の下にいるmakefont.phpとttf2ufm.exeを使って
ipag.ttfファイルからPDFで使えるファイルを生成する。
phpの動くところにtcpdfを設置してtcpdf/fonts/utils/以下に
ipag.ttfを置いておく。
コマンドプロンプトでtcpdf/fonts/utils/の下に移動して
「ttf2ufm.exe -a -F ipag.ttf」をコマンドで打つ。
すると処理が走って「ipag.afm、ipag.t1a、ipag.ufm」の
3つのファイルを生成する。
続いて同じ場所で
「[php.exeまでの相対パス] makeform.php ipag.ttf ipag.ufm」
をコマンドで打つ。
そうすると「ipag.ctg.z、ipag.php、ipag.z」の3つのファイルを生成する。
上記の3つのファイルをtcpdf/fonts/の下においてFPDI
から呼んであげます。
そうすると入れたフォントがPDFで表示されるようになりました。
VS.phpを使って、リモートデバッグしてみました!
1.サーバからデバッグ対象のソース一式をローカルへコピーする
2.プロジェクトのプロパティで以下の設定をする
パッシブモード/アクティブモードの設定を間違えないよう注意。
下のFFFTPの画面で赤丸部分がONの時はパッシブモード)
“全般”
3.ソリューションエクスプローラでindex.phpの上で右クリックしてメニューから
4.ブレークポイントをつけて、デバッグ実行する