What are potential pitfalls when trying to modify code for direct database access in PHP?

Potential pitfalls when modifying code for direct database access in PHP include security vulnerabilities such as SQL injection attacks, lack of error handling leading to potential data corruption, and difficulties in maintaining and scaling the codebase. To mitigate these risks, it is recommended to use prepared statements with parameterized queries, implement proper error handling, and consider using an ORM (Object-Relational Mapping) library for better code organization and scalability.

// Example of using prepared statements with parameterized queries to prevent SQL injection

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

// Prepare a SQL statement with placeholders for parameters
$stmt = $pdo->prepare("SELECT * FROM users WHERE username = :username");

// Bind values to the parameters
$stmt->bindParam(':username', $username);

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

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

// Loop through the results
foreach ($results as $row) {
    echo $row['username'] . "<br>";
}