こんばんわ。
codeigniter 3.0.1 Mysql でtinyintの値が取得できず、
常にデフォルト値が取得されます。
環境
codeigniter 3.0.1
MySQL Community 5.6.20
PHP 5.5.15
<MySqlデータ構造>
auth_lv tinyint(3) unsigned not null default 1, -- 権限レベル(1~5)
<取得部分>
/**
* ユーザ ID からユーザを取得する
* @param int $id: ユーザ ID
* @return NULL|User_model
*/
public function get($id) {
$query = $this->db->get_where(self::TABLE_NAME, array('id'=>$id), 1);
if ($query->num_rows() > 0) {
return $query->row(0, self::class);
}
return null;
}
<参照部分>
$my = $this->user_model->get($user_id);
if($my->auth_lv > 3)
$my->auth_lv
この値が常に1で返ってきます。
<補足>
別のプロジェクトで下記の環境の場合、問題が発生しません
codeigniter 2.2.1
MySQL Community 5.6.20
PHP 5.5.15
で、同様の処理(ソース同一)をしても値は取得できます。
config等の設定は同じでないため、一概にはすべて同じといえませんが
バージョンの違いか設定ファイルの記述漏れと思っております。
解決方法をご教授お願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。