0

私は自分のサイトを Codeigniter で実行しています。ここでは、timestampページにアクセスするたびにテーブルのフィールドを更新する必要があります。私は Codeigniter の制御フローに慣れていないので、このコードをどこに書くべきか混乱していますか? サイトのすべてのページに共通する必要があります。

4

4 に答える 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 に答える