Безопасное использования переменной типа int

В переменной $php оставляем только цифры:

1
$page = preg_replace("/\D/","",$_GET['page']);

Делаем передачу параметров в PHP безопасными

Написал небольшую функцию, которая заменяет «опасные» символы на безопасные:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 function sweet_fnc($string)  {  
        $string = str_replace("< ","",$string);  
        $string = str_replace(">","",$string);  
        $string = str_replace('\\\"',"",$string);  
        $string = str_replace(":","",$string);  
        $string = str_replace("!","",$string);  
        $string = str_replace("\r","",$string);  
        $string = str_replace("\n","",$string);  
        $string = str_replace("%","",$string);  
        $string = str_replace("^ +","",$string);  
        $string = str_replace(" +$","",$string);  
        $string = str_replace(" +","",$string);  
        $string = str_replace("!","",$string);  
        $string = str_replace("@","",$string);  
        $string = str_replace("#","",$string);  
        $string = str_replace("$","",$string);  
        $string = str_replace("%","",$string);  
        $string = str_replace("&","",$string);  
        $string = str_replace("*","",$string);  
        $string = str_replace("(","",$string);  
        $string = str_replace(")","",$string);  
       
       
        return $string;  
};

Что нужно знать при написании скрипта

Подведу черту над своими знаниям в области построения защищенных сайтов. Некоторые методы давно всем известны, но они занимают большую нишу в построении защиты.

Read more

Как организовать файловое храниние данных

Предположим, вы используете бесплатный хостинг, но базы данных MySQL нет. Как быть?
Остается один вариант — использовать файловое хранение данных.

Я бы рекомендовал создать свою структуру файла типа .dbf, так и проще будет записывать и считывать для скрипта. Но можно и обычный файл, но желательно применить к файлу свое расширение и в нем использовать разделитель, с помощью которого скрипт будет записывать данные в массив.

Остальным пунктом остается защита файловой базы данных. Для этого, с помощью файла .htaccess записываем заперт на чтение, файла из браузера

1
2
order deny,allow
deny from all

и копируем этот файл в папку с файлами, где находится наша база.

Функция mysql_real_escape_string — обезопасить от SQL-injection

Нашел хорошую функцию для PHP

Данная функция удаляет из SQL-зарпоса опасные символы средствами самого PHP.