タイトル募集中3.0

しがないITソルジャーの雑記。

コピペ怖い

formのsubmitボタンを画像にしたんだけど,どうもget送信したときに変な値まで一緒に送信されてるっぽいのでなにかと思ったら,タグが

<input type="image" src="hoge.png" value="" id="search"/>

のようになっているのが原因だった.ググったらこうするという記述が多かったのでtypeをimageにしてたんだけど,だめっぽい.
ということでCSSで背景画像として指定する.

/*HTML*/
<input type="submit" id="search" value=""/>
/*CSS*/
#search	{
    border: 0;
    height: 18px;
    width: 18px;
    background: #fff url(hoge.png) no-repeat;
}

できた.

Aptanaにファイルタイプを追加する

ZendFrameworkのviewにつかうファイルの拡張子が*.phtmlなのでそのままだとAptanaで入力補間が効かない.
なので,ファイルタイプを追加して補間が聞くようにします.

Preferences > General > Content Types で

  • Content types > Text > PHP Source File を選択したとき下にでる File associations に「*.phtml」を追加する

これで終わり.再起動すると反映されるようになりました.

Aptanaのtmpファイルが邪魔

Preferences > Aptana > Editors > HTML > Preview

  • Generate temporary files for browser previews のチェックをはずす
  • どうせプレビューもしないので Preview browsers の Firefox, IEのチェックもはずす

これでおk.スッキリしました.

リクエストオブジェクト2

全力で勘違いしてた.

$name = $this->_getParam('name')

_getParamって単体で使えるのね・・・.

$request = $this->getRequest();
$name    = $request->_getParam('name');

こんな風に使うのかと思ってたので,微妙だなとかんじてた.しかし間違いだった.エラーでて気づいた.
そりゃ_getParam使うわ.一行で書けるし,get,post気にしなくていい.

リクエストオブジェクト

PHPフレームワーク Zend Framework入門

PHPフレームワーク Zend Framework入門

この本によると,リクエストのパラメータを取得するには,

$request = $this->getRequest();
$name    = $request->getPost('name'); //postの場合

のようにするらしい.また,もっと簡単な方法として,

$name    = $this->_getParam('name')

というのが用意されていて,これは,get,post共に対応(get優先)しているとのこと.
そして,普段はこちらを使うほうがいいでしょう,と.

なるほど,こういう書き方でそういうルールらしいのでこれに従おう.