Wikipokpok:ブログ
提供: wikipokpok
2009年4月23日 (木) 21:00時点における192.168.1.2 (トーク)による版
目次
Zend Frameworkについて
Zend_Db_Tableでのjoin
setIntegrityCheck(false)を書かないとエラーになるので注意。
$table = new Bugs(); $select = $table->select()->setIntegrityCheck(false); $select->where('bug_status = ?', 'NEW') ->join('accounts', 'accounts.account_name = bugs.reported_by', 'account_name') ->where('accounts.account_name = ?', 'Bob'); $rows = $table->fetchAll($select);
Zend_Paginator
Zend_Paginatorの使い方を教えてください。リファレンスガイドを見ましたが分かりません。検索をかけても情報がありません。クイックスタートに組み込みたいと思っています。どなたかよろしくお願いします。--住職 2009年2月3日 (火) 18:16 (JST)
- GuestbookController.php
public function indexAction() { $model = $this->_getModel(); //$this->view->entries = $model->fetchEntries(); $entries = $model->fetchEntries(); $paginator = Zend_Paginator::factory($entries); //1ページに表示するエントリ数 $paginator->setItemCountPerPage(5); $paginator->setCurrentPageNumber($this->_request->getParam('page')); $this->view->paginator = $paginator; }
- /views/scripts/guestbook/index.php
<? //foreach ($this->entries as $entry): ?> <? foreach ($this->paginator as $item): ?> <?= $this->escape($item['id']) ?>[<?= $this->escape($item['name']) ?>] <?= $this->escape($item['comment']) ?> <?= $this->escape($item['created']) ?> <? endforeach ?> //pagination_control.phtmlは/views/scripts/内につくる。 <?= $this->paginationControl($this->paginator, 'Sliding', 'pagination_control.phtml'); ?>
- /views/scripts/pagination_control.phtml
<?php if ($this->pageCount): ?> <?php if (isset($this->previous)): ?> <a href="<?= $this->url(array('page' => $this->previous)); ?>">前へ</a> <?php else: ?> 前へ <?php endif; ?> <?php foreach ($this->pagesInRange as $page): ?> <?php if ($page != $this->current): ?> <a href="<?= $this->url(array('page' => $page)); ?>"><?= $page; ?></a> <?php else: ?> <?= $page; ?> <?php endif; ?> <?php endforeach; ?> <?php if (isset($this->next)): ?> <a href="<?= $this->url(array('page' => $this->next)); ?>">次へ</a> <?php else: ?> 次へ <?php endif; ?> <?php endif; ?>
以上で、selectした結果をグーグルのようにページ移動できるようになりました。
Zend Frameworkとコンソールの文字化け
データベースに接続するとき、文字コードを UTF-8 に設定すると回避できる。クイックスタートではbootstrap.phpを次にのようにした。
$dbAdapter = Zend_Db::factory($configuration->database); // 文字コードを UTF-8 に設定する $dbAdapter->query("set names 'utf8'");
Mysqlについて
CREATE TABLE構文のみ出力する
$ mysqldump -d -u hoge -p データベース名 > 出力ファイル名
AUTO_INCREMENTの開始番号を指定する。
mysql> ALTER TABLE hoge AUTO_INCREMENT=100;
データベースごとに文字コードを設定する。
mysql> SET NAMES utf8; ....utf8,ujis
文字コードの確認
mysql> SHOW VARIABLES LIKE 'character\_set\_%';
phpからのクエリで文字化けするときの対策。
$db = mysql_connect("localhost", "hoge", "piyo"); mysql_select_db("poyo",$db); mysql_query("SET NAMES utf8");
http://www.myspace.com/kungfoolfighting
EmEditor Freeのインストール
コマンドプロンプトから次のようにしました。--住職 2008年7月25日 (金) 14:18 (JST)
emed6004jfx.msi /passive
サラ川に 今年も映る 世相かな
私は57がお気に入りです。--住職 2008年7月21日 (月) 23:33 (JST)
西暦元号対照表
過去帳整理のときに便利です。--住職 2008年7月10日 (木) 17:05 (JST)