What are the best practices for integrating PHP with database queries to display filtered results based on user selections?

When integrating PHP with database queries to display filtered results based on user selections, it is important to use prepared statements to prevent SQL injection attacks. Additionally, sanitize user input to ensure data integrity and security. Finally, dynamically construct the SQL query based on the user's selections to fetch the desired results from the database.

// Assuming $conn is the database connection object

// Sanitize user input
$filter = isset($_GET['filter']) ? $_GET['filter'] : '';
$filter = mysqli_real_escape_string($conn, $filter);

// Prepare SQL statement
$stmt = $conn->prepare("SELECT * FROM table_name WHERE column_name = ?");
$stmt->bind_param("s", $filter);
$stmt->execute();

// Fetch and display filtered results
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
    // Display filtered results
}

// Close statement and connection
$stmt->close();
$conn->close();