Класс SafePostgres

Назначение

Класс SafePostgres предоставляет безопасный и удобный способ работы с базой данных PostgreSQL, используя паттерн Singleton для обеспечения единственного подключения. Он поддерживает выполнение SQL-запросов с использованием плейсхолдеров для безопасной подстановки значений и защиты от SQL-инъекций.

Методы класса

Класс SafePostgres предлагает методы для выполнения SQL-запросов, получения результатов, работы с плейсхолдерами и фильтрации данных.

Примеры использования

Добавление данных в таблицу

Используйте метод query, чтобы безопасно вставить данные в базу с использованием плейсхолдеров:

    
$db = SafePostgres::gI();
$db->query("INSERT INTO users (name, email) VALUES (?s, ?s)", 'Jane Doe', 'jane@example.com');
    

Получение одной строки

Метод getRow возвращает одну строку в виде ассоциативного массива:

    
$db = SafePostgres::gI();
$user = $db->getRow("SELECT * FROM users WHERE id = ?i", 2);
print_r($user);
    

Фильтрация данных перед запросом

С помощью метода filterArray вы можете отфильтровать входные данные перед вставкой в базу:

    
$db = SafePostgres::gI();
$allowedFields = ['name', 'email'];
$filteredData = $db->filterArray($_POST, $allowedFields);
$sql = "INSERT INTO users SET ?u";
$db->query($sql, $filteredData);
    

Вывод

Класс SafePostgres обеспечивает безопасное взаимодействие с PostgreSQL, используя PDO и систему плейсхолдеров. Он упрощает выполнение запросов, получение данных и защиту от SQL-инъекций, позволяя легко управлять базой данных в вашем приложении.