Просмотр поста

.
diabloser

обработка с формы

if (isset($_POST['submit'])) {
            /*
            -----------------------------------------------------------------
            Записываем новые настройки, заданные пользователем
            -----------------------------------------------------------------
            */
            $set_user['timeshift'] = isset($_POST['timeshift']) ? intval($_POST['timeshift']) : 0;
            $set_user['avatar'] = isset($_POST['avatar']);
            $set_user['smileys'] = isset($_POST['smileys']);
            $set_user['translit'] = isset($_POST['translit']);
            $set_user['digest'] = isset($_POST['digest']);
            $set_user['direct_url'] = isset($_POST['direct_url']);
            $set_user['field_h'] = isset($_POST['field_h']) ? abs(intval($_POST['field_h'])) : 3;
            $set_user['kmess'] = isset($_POST['kmess']) ? abs(intval($_POST['kmess'])) : 10;
            $set_user['quick_go'] = isset($_POST['quick_go']);
            if ($set_user['timeshift'] < -12)
                $set_user['timeshift'] = -12;
            elseif ($set_user['timeshift'] > 12)
                $set_user['timeshift'] = 12;
            if ($set_user['kmess'] < 5)
                $set_user['kmess'] = 5;
            elseif ($set_user['kmess'] > 99)
                $set_user['kmess'] = 99;
            if ($set_user['field_w'] < 10)
                $set_user['field_w'] = 10;
            elseif ($set_user['field_w'] > 80)
                $set_user['field_w'] = 80;
            if ($set_user['field_h'] < 1)
                $set_user['field_h'] = 1;
            elseif ($set_user['field_h'] > 9)
                $set_user['field_h'] = 9;

            // Устанавливаем Wap скин
            foreach (glob('../theme/*/style.css') as $val)
                $theme_list[] = array_pop(explode('/', dirname($val)));
            $set_user['wapskin'] = isset($_POST['wapskin']) && in_array($_POST['wapskin'], $theme_list) ? functions::check($_POST['wapskin']) : $set['skindef'];

// Устанавливаем Web скин
            foreach (glob('../theme/*/style.css') as $val)
                $theme_list[] = array_pop(explode('/', dirname($val)));
            $set_user['webskin'] = isset($_POST['webskin']) && in_array($_POST['webskin'], $theme_list) ? functions::check($_POST['webskin']) : $set['webskindef'];
           
   // Устанавливаем язык
            $lng_select = isset($_POST['iso']) ? trim($_POST['iso']) : false;
            if ($lng_select && array_key_exists($lng_select, core::$lng_list)) {
                $set_user['lng'] = $lng_select;
                unset($_SESSION['lng']);
            }

            // Записываем настройки
            mysql_query("UPDATE `users` SET `set_user` = '" . mysql_real_escape_string(serialize($set_user)) . "' WHERE `id` = '$user_id'");
            $_SESSION['set_ok'] = 1;
            header('Location: profile.php?act=settings');
            exit;
        } elseif (isset($_GET['reset']) || empty($set_user)) {
            /*
            -----------------------------------------------------------------
            Задаем настройки по-умолчанию
            -----------------------------------------------------------------
            */
            mysql_query("UPDATE `users` SET `set_user` = '' WHERE `id` = '$user_id'");
            $_SESSION['reset_ok'] = 1;
            header('Location: profile.php?act=settings');
            exit;
        }