————–
\n
\n
テキストエリア内容
————–
のデータがあった場合
$form->input('Model.field', array('type' => 'textarea'));
で表示した場合、最初の改行コードがない状態でフォームに表示されます。
(下記のように2つある改行が1つになっています)
WEBシステム開発等で気付いたことなどをまとめていきます。
————–
\n
\n
テキストエリア内容
————–
のデータがあった場合
$form->input('Model.field', array('type' => 'textarea'));
で表示した場合、最初の改行コードがない状態でフォームに表示されます。
(下記のように2つある改行が1つになっています)
モデルのquery関数を使ってループをまわしながら最大noをとってくる処理でハマりました・・・
query関数って$sql同じだった場合勝手にキャッシュを使って前回と同じ値を返すんですね。
通常はこれを回避する為に
$this->query($sql, false);
とすることで毎回最新データを取ってきてくれます。
デフォルトでキャッシュが邪魔だったので、app_model.phpで
function query() { $params = func_get_args(); if (empty($params[1])) { $params[1] = false; } else { if (is_array($params[1]) && empty($params[2])) { $params[2] = false; } } $db =& ConnectionManager::getDataSource($this->useDbConfig); return call_user_func_array(array(&$db, 'query'), $params); }
query関数をオーバーライドしました。
バージョンは1.2.6です。
OpenPEARでPDFの位置合わせを楽に出来るようにしたPDF_Support_Libraryを 公開しました。
OpenPEARでのPDF_Support_LibraryのURL
http://openpear.org/package/PDF_Support_Library
今回UPした画像のリサイズと画像に文字を乗っけるという仕様の仕事があり、PHPで画像加工に挑戦しました。
調べてみるとPHPを入れるときに大体標準で付いてくるGDライブラリで画像加工が出来るとのこと。
今回は画像を小さくリサイズするのと、写真に文字を埋め込むという事をしました。
携帯サイトも併設したシステムを組むことになりPCサイトからQRコードを
読み込んで携帯サイトに飛んでもらうということで、QRコードを作成することになりました。
今回複数の写真を一気にUPしたい案件があったのでネットを探していたら、便利そうなライブラリを発見!!
その名もSWFUploadライブラリというもので、ファイルを選択する際にドラッグで複数選ぶか、ShiftかCtrlを押しながら複数選ぶ。
選び終わったら開くボタンを押す、そしたら選ばれたファイルが進行状況が分かりながらアップロードされていくというライブラリです。
前回携帯サイトを作った方法だと、CakePHPのバージョンアップによって動かなくなってしまっていたので、新しい方法で作った覚書を残していきます。
今回は「CakePHP1.2ガイドブック」の携帯サイトを作成するを参考に作っていっています。
この方法だとcakeのバージョンによって動かなくなることは無いと思いますが、一応バージョンは1.2.3.8166で試してみました。
内容はほぼそのままなのですが、自分が分かりやすいようにコメントを付け加えていってます。
php5.3の環境にCakePHPアップしたらDeprecatedエラーが出まくりだったのでメモ
開発環境から本番環境にソースをアップしてブラウザでアクセスしたら
「Deprecated: Assigning the return value of new by reference is deprecated in…」
のメッセージが大量に出た、どうもphp5.3からエラーの定義が変わったのが原因みたい。
どうも5.3からerror_reporting()に定義がかわり、E_ALL値が変更されたらしい。
cake/libs/configure.phpの297行目くらいに下記のコードを追加してエラーの出力を調整
if (isset($config['debug'])) { if ($_this->debug) { error_reporting(E_ALL); //php 5.3のエラー出力調整(ここから追加) if (error_reporting() > 6143) { error_reporting(E_ALL & ~E_DEPRECATED); } //php 5.3のエラー出力調整(ここまで追加)
CSVファイルをダウンロードしたら文字化けするとお客様から連絡があり調べたところ、テストサイトではSHIFT_JISでダウンロード出来ていた所が何故かUTF-8でダウンロードされているようになってしまっていました。
UTF-8のファイルをSHIFT_JISで開きなおすと一応文字化けは直るのですが先頭に「・ソ」という表示が知らぬうちに付いていました。
submitボタンを押した時に間違って連打で押してしまった時にデータの保存が2重でされたり、メールが2通送られてしまったりします。
今回はjavascriptで制御する方法を取ってみたので簡単に紹介します。