Вам нужно какое-то хранилище вместо написания кода, который сам пишет.
if(isset($_GET['newentry'])){
if(file_put_contents('./banlist.txt', $_GET['newentry'] . PHP_EOL, FILE_APPEND) === false){
die('no perms, cant create file in '.getcwd());
} else {
die('user banned');
}
} elseif(isset($_GET['id'])){
if(in_array($_GET['id'], explode(PHP_EOL, file_get_contents('./banlist.txt')))){
die('user is banned');
}
}
Смотрите это как Пример код, предпочтительный является использование базы данных и поместить этот код за вход стены некоторых видов, как это имеет НЕТ БЕЗОПАСНОСТЬ проверки.
В текущем состоянии, если я знаю местоположение этого скрипта, я могу просто создать цикл и запретить каждому пользователю в диапазоне от 0 до MAX_INT. Кроме того, он не проверяет, запрещен ли пользователь, поэтому я могу заполнить ваш жесткий диск, запустив простой скрипт на бесконечность. Noor проверяет потенциальные атаки XXS.
Итак, когда загружается 'newentry', вы хотите сохранить его значение в своем файле? Это похоже на то, что БД будет лучше. Вы также можете использовать массив запрещенных номеров, а затем 'in_array'. – chris85
Код должен быть статическим, неизменным. * Данные * меняются. Данные хранятся в базе данных или другом отдельном хранилище. Данные не являются кодом. – deceze