Верно ли я понимаю, что при написании безопасного кода важно не допустить запись и показ данных, полученных с $_POST и $_GET формы в PHP? Но проверять их можно в коде до фильтрации переменных? Например...
Нельзя так:
echo $_GET["test"];
Нельзя так:
$test = $_GET["test"];
$sql = "INSERT INTO Testt (name) VALUES ($test)";
if (mysqli_query($conn, $sql)) {
echo "Добавлено";
}
Но можно так, т.к. данные не записываются и не выводятся:
if (!preg_match("/^[&а-яa-z0-9]+$/iu", $_GET["test"])) {
echo "Запрещенные символы";
}
Т.е. нельзя выводить и записывать $_POST и $_GET с форм, но можно проверять переменные в условиях. Верно?