What steps can be taken to prevent SQL injection vulnerabilities in PHP code when interacting with a database?

SQL injection vulnerabilities can be prevented in PHP code by using prepared statements with parameterized queries. This approach ensures that user input is treated as data rather than executable SQL code, thereby preventing malicious SQL injection attacks.

// Establish a database connection
$pdo = new PDO('mysql:host=localhost;dbname=mydatabase', 'username', 'password');

// Prepare a SQL statement with a parameterized query
$stmt = $pdo->prepare('SELECT * FROM users WHERE username = :username');

// Bind the parameter value
$stmt->bindParam(':username', $_POST['username']);

// Execute the statement
$stmt->execute();

// Fetch the results
$results = $stmt->fetchAll();