2012-01-01から1年間の記事一覧

郵便番号から住所検索するjQueryライブラリ

今までajaxzip3を使っていたけど、たまにjsの読み込みが遅いときがあって、違うのを探してみたところ、jQuery.zip2addrというライブラリを発見。 これの特徴は、 ・Google日本語入力APIを使っている ・httpとhttpsを気にしなくて良い ・導入がとにかく簡単 …

メール送信の文字化け対応

php

UTF8で記述された丸囲み数字(①)やローマ数字(Ⅰ)をメール送信の際にJISに変換しようとすると、JISがそれらの文字に対応していないため、文字化けが発生する。 それらの文字列を使わないようにするのがベストだけど、そうもいってられないケースの場合は、下記…

xargsコマンドについて

xargs ・・・標準入力から引数を読み込み、指定のコマンドを実行する 下記のようにすることで一括で権限変更が可能 find . -type d -print | xargs chmod 775 find . -type f -print | xargs chmod 664

hasmanyのテーブルに対して条件を設定する方法

del_flg = 0のhasmanyテーブルを取得したい例 $this->[モデル名]->hasMany['関連モデル名']['conditions'] = '関連モデル名.del_flag = 0'; $data = $this->[モデル名]->findAll()) foreachを使えば、hasMany 内のテーブルが増えても大丈夫 foreach ($this->…

jqueryの配列検索は$.inArray で行う

Array.indexOf はIEでは動かないため、 jquery環境なら$.inArray(value, array) を使うこと 見つからない場合は -1 を返す

array_merge と +演算子の挙動

php

array_mergeと+演算子の挙動を理解していなかったのでメモ。 array_mergeの特徴 キーが数値の場合、0からに振りなおすため、同じキーでも追加する キーが文字列の場合、キーを保持するが同じキーは上書く +演算子の特徴 キーが数値でも文字列でもキーを保…

ボタンを押してdisabledにする際の注意点

IEだと以下のボタンがサブミットされない type="submit" onclick="$(this).attr('disabled', 'disabled')" 下記のようにすること type="button" onclick="$(this).attr('disabled', 'disabled');$('#form').submit();"

bind、unbind、recursive を使う際の注意点

コントローラーでモデルを呼び出し、そのモデル内でbindModel等している場合、そのbindModelの設定は、コントローラーの処理が終わるまで引き継がれるため注意。 一回のアクションで何度も同じモデルを呼び出すこと自体、おかしい事も考えられるため効率が悪…

jquery.uploadの功罪

jquery.uploadの良い点・悪い点 良い点 ・ajax上でファイルアップロードが出来るためとても便利 ・レスポンスをtext/htmlにすればIEでも使用可能 ・uploadメソッドでフォーム上のデータを一発postできる 悪い点 ・レスポンスをtext/htmlにすると結果のHTMLが…

モデル内でbelongsToテーブルに条件を設定する方法

モデルAとBはbelongsな関係を持ち、 モデルBとCはhasOneな関係を持つ時、 モデルA内で $this->B->hasOne['C']['conditions'] = 'C.point < 0'; とすれば C.point < 0 のデータのみ取得できる。 ※ただしAとB自体は条件を満たさないデータも取得され、 あくま…

モデル内でbelongsToテーブルのリレーションを解除する方法

モデルAはBとbelongsToな関係 var $belongsTo = array('B'); モデルA内でBのhasManyテーブルであるC、Dを解除したい $this->B = new B(); $this->B->unbindModel(array('hasMany' => array(C,D))); $this->recursive = 2; return $this->find('all'); ※$this…

jsのmatchコマンドによる結果の取得について

文字列のマッチングの結果を得る方法 ↓で()の一つ目の結果が取得できる var str = ($(this).text().match(/([^\s]+)\s*/)||[])[1]; 参考サイト http://d.hatena.ne.jp/koseki2/20090530/JsIdiom

テスト

テストです はてなブログむちゃくちゃ使いやすい