Принимаем вопросы от населения
Macik |
|
---|---|
Изучаю код обработки параметров плагина при их изменении в Админке, в разделе «плагин» → конфигурация. Смотрю код admin.config.php if ($a == 'update' && !empty($_POST)) { // Update only those options which have been changed $overriden = array(); $sql = $db->query("SELECT config_name FROM $db_config WHERE config_owner = ? AND config_cat= ? $where_cat", array_merge(array($o, $p), $sub_param)); while ($row = $sql->fetch()) { $cfg_value = trim(cot_import($row['config_name'], 'P', 'NOC')); if ($o == 'core' && $p == 'users' && ($cfg_name == 'av_maxsize' || $cfg_name == 'sig_maxsize' || $cfg_name == 'ph_maxsize')) { $cfg_value = min($cfg_value, cot_get_uploadmax() * 1024); } $db->update($db_config, array('config_value' => $cfg_value), "config_name = ? AND config_owner = ? AND config_cat = ? $where_cat", array_merge(array($row['config_name'], $o, $p), $sub_param)); $overriden[] = $row['config_name']; } $sql->closeCursor(); И не понимаю смысла комментария, который вроде бы гласит «записываем только те параметры, которые были изменены». А при этом, судя по коду, $db->update срабатывает в цикле по всем параметрам без разбора. Прокомментируйте, пожалуйста. https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F |