What are the best practices for validating and securing form submissions in PHP, particularly when passing IDs?
When validating and securing form submissions in PHP, particularly when passing IDs, it is important to sanitize and validate user input to prevent SQL injection and other security vulnerabilities. One way to achieve this is by using prepared statements and parameterized queries to safely handle user input.
// Validate and sanitize form input
$id = isset($_POST['id']) ? filter_var($_POST['id'], FILTER_SANITIZE_NUMBER_INT) : null;
// Prepare and execute a parameterized query
$stmt = $pdo->prepare("SELECT * FROM table WHERE id = :id");
$stmt->bindParam(':id', $id, PDO::PARAM_INT);
$stmt->execute();
// Fetch the result
$result = $stmt->fetch();