Я пытаюсь сделать сеансы, основанные на sql запросе, возвращаются данные запроса
это мой код:
$r = self::$db->fetch_row_assoc($sql);
$theme_dir = THEME_PATH . self::get_useragent() . "_UA_" . $flag . "_" . $r['theme_folder_name'];
if (self::$config['set_session'] == 1) {
foreach ($r as $k => $v) {
self::$session->set(self::get_useragent() . "_UA_" . $flag . "_" . $k, $v);
}
self::$session->set(self::get_useragent() . "_UA_" . $flag . "_theme_loaded", 1);
}
когда этот код запускается, делает мои сеансы, но я получаючто-то вроде
$_SESSION['Default_UA_landing_theme_id'] = 1
$_SESSION['Default_UA_landing_0'] = 1
он делает это для каждого сеанса, который он создает, он делает 1 сеанс с $ k, являющимся именем поля результата, возвращенного моим запросом, затем он делает другой с $ k, являющимся индексоммассив $ r.
как мне сделать так, чтобы он делал один сеанс на $ k?
, это метод, который я использую для запроса моей базы данных
public function fetch_row_assoc($statement)
{
self::$PDO->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
try{
$stmt = self::$PDO->query($statement);
$stmt->setFetchMode(PDO::FETCH_ASSOC);
$result = $stmt->fetch(PDO::FETCH_BOTH); //FETCH_BOTH
return $result;
}catch(PDOException $e){
echo $e->getMessage();
}
return false;
}