Добро пожаловать, Гость!
ошибка.как исправить?
Помощь мастерам | ошибка.как исправить?
Kyzm1ch :
Notice: Undefined index: action in /var/----сайт--------/adm_panel/adm_money.php on line 23
23строка--$action=htmlspecialchars(trim($_GET['action']));
ошибка.как исправить?
2 Фев 2018Notice: Undefined index: action in /var/----сайт--------/adm_panel/adm_money.php on line 23
23строка--$action=htmlspecialchars(trim($_GET['action']));
Комментарии:
Svat 2 Апр 2018
Могу задать тот же вопрос.
А зачем так empty или isset ?
Если можно так
$action = filter_input(INPUT_GET, 'action', FILTER_SANITIZE_FULL_SPECIAL_CHARS);
А можно ещё и так
$_GET['action'] = 'NULL';
$action = htmlspecialchars(trim($_GET['action']));
В данном случае...
Оператор подавления ошибок @ это универсальное и самое краткое решение.
Нет, если тебе конечно надо ошибку обработать, и куда то вывести результат, тогда да...
Но об этом не слова, автор темы просит - ошибка как исправить?
berserk2014 (2 Апр 2018):
Svat, зачем @ глушить ошибки, через empty или isset выбрать и все.
berserk2014, Ну скорее всего не глушить а подавлять, но это не важно. Svat, зачем @ глушить ошибки, через empty или isset выбрать и все.
Могу задать тот же вопрос.
А зачем так empty или isset ?
Если можно так
$action = filter_input(INPUT_GET, 'action', FILTER_SANITIZE_FULL_SPECIAL_CHARS);
А можно ещё и так
$_GET['action'] = 'NULL';
$action = htmlspecialchars(trim($_GET['action']));
В данном случае...
Оператор подавления ошибок @ это универсальное и самое краткое решение.
Нет, если тебе конечно надо ошибку обработать, и куда то вывести результат, тогда да...
Но об этом не слова, автор темы просит - ошибка как исправить?
berserk2014 2 Апр 2018
Svat, зачем @ глушить ошибки, через empty или isset выбрать и все.
______________________
Помогу/ сверстаю/ напишу скрипты недорого
Телеграмм: @intarface
Svat, зачем @ глушить ошибки, через empty или isset выбрать и все.
______________________
Помогу/ сверстаю/ напишу скрипты недорого
Телеграмм: @intarface
Svat 18 Фев 2018
Правильную подсказку, дал SimptomFD
Попрошу обратить внимание - подсказку но не решение.
Жаль...
Правильный ответ дал kantry
Как бы до этого, взаимопонимание не шло криво.
Но тут он прав, кроме одного.
Если человек использует htmlspecialchars
То фильтровать надо так
$action = filter_input(INPUT_GET, 'action', FILTER_SANITIZE_FULL_SPECIAL_CHARS);
Данный метод есть аналог функции htmlspecialchars
Но... до этого, параметру filter.default_flags
необходимо придать значение 0
О чём немного ниже...
Сама же ошибка гласит - не существует индекс
Не существует именно в $_GET['action']
Проще, метод обьявлен, но пуст.
Решений несколько.
Но советую применить от kantry
Широкий захват от 5.3.0 до PHP 7
Что в случае позволит, комфортно перейти на иной пакет php
На заметку начинающим и не только...
Есть замечательная панацея, это собака @
Если вы не желаете, боитесь или иная причина
не использовать решение kantry
Например незнание.
Факт, решение kantry будет работать только с методом GET
INPUT_ имеет ряд параметров
INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_SERVER
И не только...
А так же типы фильтров
FILTER_SANITIZE_EMAIL, FILTER_SANITIZE_NUMBER_INT и так далее...
Которые в свою очередь опираются на
настройки php.ini либо httpd.conf
Что само за себя говорит - как бы не промахнуться.
О чём писалось в начале.
Не верные настройки и привет неприятности.
А в свете последних событий, это имеет быть.
В хостеры лезут не только криворуки но и кривоноги))
Которые кроме как желания обогатиться не чего больше не имеют.
Ещё раз обращу внимание.
Способ предоставленный kantry , есть прекрасное решение.
Почему вы поймёте, на первых же шагах.
Но использовать на авось нельзя.
И если знаний пока нет, просто посадите собаку, вот так
$action = htmlspecialchars(trim(@$_GET['action']));
Это есть универсальное решение, которое можно использовать во всех местах возникновения подобной ошибки.
Всем добра, пост сдал))
Правильную подсказку, дал SimptomFD
Попрошу обратить внимание - подсказку но не решение.
Жаль...
Правильный ответ дал kantry
Как бы до этого, взаимопонимание не шло криво.
Но тут он прав, кроме одного.
Если человек использует htmlspecialchars
То фильтровать надо так
$action = filter_input(INPUT_GET, 'action', FILTER_SANITIZE_FULL_SPECIAL_CHARS);
Данный метод есть аналог функции htmlspecialchars
Но... до этого, параметру filter.default_flags
необходимо придать значение 0
О чём немного ниже...
Сама же ошибка гласит - не существует индекс
Не существует именно в $_GET['action']
Проще, метод обьявлен, но пуст.
Решений несколько.
Но советую применить от kantry
Широкий захват от 5.3.0 до PHP 7
Что в случае позволит, комфортно перейти на иной пакет php
На заметку начинающим и не только...
Есть замечательная панацея, это собака @
Если вы не желаете, боитесь или иная причина
не использовать решение kantry
Например незнание.
Факт, решение kantry будет работать только с методом GET
INPUT_ имеет ряд параметров
INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_SERVER
И не только...
А так же типы фильтров
FILTER_SANITIZE_EMAIL, FILTER_SANITIZE_NUMBER_INT и так далее...
Которые в свою очередь опираются на
настройки php.ini либо httpd.conf
Что само за себя говорит - как бы не промахнуться.
О чём писалось в начале.
Не верные настройки и привет неприятности.
А в свете последних событий, это имеет быть.
В хостеры лезут не только криворуки но и кривоноги))
Которые кроме как желания обогатиться не чего больше не имеют.
Ещё раз обращу внимание.
Способ предоставленный kantry , есть прекрасное решение.
Почему вы поймёте, на первых же шагах.
Но использовать на авось нельзя.
И если знаний пока нет, просто посадите собаку, вот так
$action = htmlspecialchars(trim(@$_GET['action']));
Это есть универсальное решение, которое можно использовать во всех местах возникновения подобной ошибки.
Всем добра, пост сдал))
Zed 6 Фев 2018
так то по идее если данные никуда не записываются,и не выводятся там вполне trim() хватит
kantry (6 Фев 2018):
Zed, красивее будет(и правильнее)
$action = filter_input(INPUT_GET, 'action', FILTER_DEFAULT);
kantry, ну как было я так и оставил,от себя ничего не хочу добавлять.Zed, красивее будет(и правильнее)
$action = filter_input(INPUT_GET, 'action', FILTER_DEFAULT);
так то по идее если данные никуда не записываются,и не выводятся там вполне trim() хватит
kantry 6 Фев 2018
$action = filter_input(INPUT_GET, 'action', FILTER_DEFAULT);
Zed (6 Фев 2018):
$action= isset($_GET['action'] ?
htmlspecialchars(trim($_GET['action'])) : NULL;
Zed, красивее будет(и правильнее)$action= isset($_GET['action'] ?
htmlspecialchars(trim($_GET['action'])) : NULL;
$action = filter_input(INPUT_GET, 'action', FILTER_DEFAULT);
Kyzm1ch 6 Фев 2018
Автор темы
Автор темы
Zed (5 Фев 2018):
<? $action= isset($_GET['action'] ?
htmlspecialchars(trim($_GET['action'])) : NULL;?>
Zed, какой код прописати в 23 строке ?<? $action= isset($_GET['action'] ?
htmlspecialchars(trim($_GET['action'])) : NULL;?>