私は自分のサイトを Codeigniter で実行しています。ここでは、timestamp
ページにアクセスするたびにテーブルのフィールドを更新する必要があります。私は Codeigniter の制御フローに慣れていないので、このコードをどこに書くべきか混乱していますか? サイトのすべてのページに共通する必要があります。
質問する
482 次
4 に答える
1
最も簡単な方法は、おそらくこれをコントローラーのコンストラクターに配置することです。これは、ページが読み込まれるたびに呼び出されるためです。
于 2012-08-21T12:48:18.650 に答える
1
application/config/hooks.php でフックを使用できます
http://ellislab.com/codeigniter/user_guide/general/hooks.html
$hook['pre_controller'] = array(
'class' => 'MyClass',
'function' => 'Myfunction',
'filename' => 'Myclass.php',
'filepath' => 'hooks',
'params' => array('beer', 'wine', 'snacks')
);
于 2012-08-21T12:52:07.917 に答える
0
モデルを作成し、モデル名を config/autoload.php 検索行に追加します。
$autoload['モデル'] = 配列();
次に(モデルが作成された後)、すべてのコントローラーで update_entry() 関数を要求するだけです。
$this->update->update_entry();
モデル例:
クラス Update は CI_Model を拡張します {
function update_entry() { $timestamp = time(); $this->db->where('id',1)->update('entries', array('timestamp' => $timestamp)); }
}
于 2012-08-21T12:51:15.600 に答える
0
または単純に__Constructに入れます
于 2012-08-24T06:18:58.077 に答える