Неустранимая ошибка: невозможно использовать возвращаемое значение функции в контексте записи в [filter_input]

Я изучаю PHP и думаю, что у меня проблемы с filter_input функция.

<?phpif (!isSet(filter_input(INPUT_COOKIE, 'nazwa')) && !isSet(filter_input(INPUT_GET, 'nazwa')))
{
include ("header.html");
include 'form.html';
include 'footer.html';
}
else if (isset(filter_input(INPUT_GET, 'nazwa'))) {
setcookie("nazwa", (filter_input(INPUT_GET, 'nazwa')), time() + 60*60*24*365);
include 'header.html';
echo "<p> Dziękujemy za podanie danych.</p>";
include 'footer.html';
}
else {
include 'header.html';
echo "Witamy, zostałeś rozpoznany jako {filter_input(INPUT_COOKIE, 'nazwa')}.";
include 'footer.html';
}

?>

Я получил:

Неустранимая ошибка: невозможно использовать возвращаемое значение функции в контексте записи в C: \ Users \ User \ Documents \ NetBeansProjects \ PhpProject3 \ cookie \ index.php в строке 4

Не могли бы вы помочь мне?

2

Решение

Ты используешь

isset(filter_input(INPUT_GET, 'nazwa')

Вместо этого вы можете использовать что-то вроде этого (везде, где вы звоните isset()):

$func = filter_input(INPUT_COOKIE, 'nazwa');
isset($func)

Прямо из PHP документация

Предупреждение
isset () работает только с переменными, поскольку передача чего-либо еще приведет к ошибке разбора. Для проверки, установлены ли константы, используйте функцию define ().

isset() это языковая конструкция Не нормальная функция.

3

Другие решения

Вы не можете использовать isset() в результате вызова функции, здесь filter_input(),

Потяните filter_input() вызвать (присвоить возвращаемое значение функции переменной, а затем проверить его)

$nazwa = filter_input(INPUT_POST, 'nazwa');
if($nazwa) { ... }

или вставьте это:

if ($nazwa = filter_input(INPUT_POST, 'nazwa'))
{
// your code
} else {
echo 'Nope';
}
1

По вопросам рекламы [email protected]