JohnCMS | Разработка следующей версии

Тема закрыта
75.67K
.
Кадило крутится, лавэха мутится
# Koenig (22.12.2019 / 11:12)
Simba, Говнокод=)
Ну этот класс будет выпилен, когда на шаблоны будет переделываться та страница)
.
kantry
Hey guys! Finally I'm gonna change status!?

Simba, Вот такую то хрень, наверно тоже надо убирать?
$c = isset($_GET['c']) ? abs((int) ($_GET['c'])) : false;

.
Кадило крутится, лавэха мутится
# kantry (22.12.2019 / 18:14)
Simba, Вот такую то хрень, наверно тоже надо убирать?
$c = isset($_GET['c']) ? abs((int) ($_GET['c'])) : false;
Да.
.
Hey guys! Finally I'm gonna change status!?

Simba,

Так пойдет? (+/-)
// Получаем ID раздела и подготавливаем запрос
//$c = isset($_GET['c']) ? abs((int) ($_GET['c'])) : false; // ID раздела
//$s = isset($_GET['s']) ? abs((int) ($_GET['s'])) : false; // ID подраздела
//$t = isset($_GET['t']) ? abs((int) ($_GET['t'])) : false; // ID топика
//$do = isset($_GET['do']) && (int) ($_GET['do']) > 0 && (int) ($_GET['do']) < 10 ? (int) ($_GET['do']) : 0;
$args = [
    'new' => FILTER_DEFAULT,
    'do' =>  [
        'filter' => FILTER_VALIDATE_INT,
        'options' => [
            'default' => 0,
            'min_range' => 1,
            'max_range' => 9
            ]
        ],
    'c' =>  [
        'filter' => FILTER_VALIDATE_INT,
        'options' => [
            'default' => 0,
            'min_range' => 1,
            ]
        ],
    's' => [
        'filter' => FILTER_VALIDATE_INT,
        'options' => [
            'default' => 0,
            'min_range' => 1,
            ]
        ],
    't' => [
        'filter' => FILTER_VALIDATE_INT,
        'options' => [
            'default' => 0,
            'min_range' => 1,
            ]
        ],
    ];

$in_get = filter_input_array(INPUT_GET, $args);
unset($args);

if ($in_get['c']) {
.
Кадило крутится, лавэха мутится
# kantry (22.12.2019 / 21:06)
Simba, // Получаем ID раздела и подготавливаем запрос
//$c = isset($_GET['c']) ? abs((int) ($_GET['c'])) : false; // ID раздела
//$s = isset($_GET['s']) ? abs((int) ($_GET['s'])) : false; // ID под
Не, ну это жесть какая-то))
Под убирать я имел в виду надо просто заменить на PSR-7 вариант получения данных из GET и POST )
В том примере что ты кинул нам тупо нужны integer. Там бы от isset избавиться и было бы идеально, а ты нагородил ещё несколько этажей проверок
Это не те данные которые надо так усердно фильтровать) Тут как раз надо наоборот упростить написание этой фигни...
.
╭∩╮ (`-`) ╭∩╮
Добавлено: 22.12.2019 / 22:01
# Simba (22.12.2019 / 21:44)
Под убирать я имел в виду надо просто заменить на PSR-7 вариант получения данных из GET и POST )
Там довольно просто:
$get = $request->getQueryParams();
$id = (int) ($get['id'] ?? 0);

В первой строке мы получаем весь массив $_GET
Ну а далее, используем его.
З.Ы.
Разумеется в начале надо дернуть из контейнера ServerRequestInterface

Добавлено: 22.12.2019 / 22:02
Чтоб получить $_POST средствами PSR-7 надо так:
$post = $request->getParsedBody();
$value = $post['key'];


Добавлено: 22.12.2019 / 22:03
У них там конечно названия методов не являются интуитивно понятными для простых людей, но постепенно привыкаешь.
.
Кадило крутится, лавэха мутится

Тут вот пример есть как работать со всем этим.
https://github.com/johncms/joh ... p#L25

.
Кадило крутится, лавэха мутится
# AlkatraZ (22.12.2019 / 22:03)
У них там конечно названия методов не являются интуитивно понятными для простых людей, но постепенно привыкаешь.
Ну названия в принципе вполне логичны если вдаться в подробности структуры запроса гг
Но когда не вдаешься в подробности конечно не очень понятно.
.
╭∩╮ (`-`) ╭∩╮

Да, правильно.
Но вот сейчас глянул и со стыдом понял, что забыл как вот с этим работать?
https://github.com/johncms/joh ... p#L55

.
Там довольно просто:
$get = $request->getQueryParams();
$id = (int) ($get['id'] ?? 0);
Так и знал, что где-то в ядре есть получение Request, но не нашёл где именно, и запилил свой класс
Всего: 1376
Кураторы: AlkatraZ