Код вырван из контекста, но я думаю не имеет смысла копировать сюда всю программу.
Есть код PHP, который обрабатывает данные, введенные в форму:
<?php
require_once "reg file/login.php";
$connection = new mysqli($hn, $un, $pw, $db);
if ($connection->connect_error) die("Сбой подключения к БД.");
//В if'е выдается ошибка из-за функции get_post()
if (isset(get_post($connection, "delete")) && isset(get_post($connection,
"delete")) {
$number = get_post($connection, "number");
$query = "DELETE FROM `accounts` WHERE `number` = $number";
$result = $connection->query($query);
if (!$result) echo "Ошибка при удалении данных.<br>";
}
function get_post($connection, $var) {
return $connection->real_escape_string($_POST[$var]);
}
?>
Форма:
<form action="<?php $_SERVER['PHP_SELF']?>" method="POST">
<input type="hidden" name = "delete" value="yes">
<input type="hidden" name = "number" value="<?php echo $n?>">
<input type="submit" value="Удалить запись">
</form>
Выдает ошибку:
Cannot use isset() on the result of an expression (you can use "null !== expression" instead) in <имя файла> on line 6
Если заменить get_post() на $_POST[...], то всё работает. Почему так? В чём проблема?
Надо заменить функции isset()
на null !== get_post($connection, "delete")
и null !==get_post($connection, "number")
.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Есть проект на Yii2Когда захожу на сайт - пишет что не найден класс, хотя по факту он есть