How can SQL injection vulnerabilities be addressed when retrieving data from a database in PHP, as seen in the provided code snippet?
SQL injection vulnerabilities can be addressed by using prepared statements or parameterized queries in PHP when retrieving data from a database. This approach helps prevent malicious SQL injection attacks by separating SQL code from user input data.
// Using prepared statements to prevent SQL injection
$stmt = $pdo->prepare("SELECT * FROM users WHERE username = :username");
$stmt->bindParam(':username', $username);
$stmt->execute();
$results = $stmt->fetchAll();