I am planing to use the following method to set a session key. Is there better/preferred way?
public function setSessionItem($id,$key,$val) {
$expire=time()+$this->getTimeout();
$db=$this->getDbConnection();
$sql="SELECT id FROM {$this->sessionTableName} WHERE id=:id";
if($db->createCommand($sql)->bindValue(':id',$id)->queryScalar()===false)
$sql="INSERT INTO {$this->sessionTableName} (id, $key, expire) VALUES (:id, :val, $expire)";
else
$sql="UPDATE {$this->sessionTableName} SET $key=:$val, expire=$expire WHERE id = :id";
$db->createCommand($sql)->bindValue(':id',$id)->bindValue(':val',$val)->execute();
return true;
}