What best practices should be followed when writing PHP code for database operations?

When writing PHP code for database operations, it is important to follow best practices such as using prepared statements to prevent SQL injection attacks, validating user input to ensure data integrity, and properly handling errors to provide meaningful feedback to users.

// Connect to the database
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// Use prepared statements to prevent SQL injection
$stmt = $conn->prepare("INSERT INTO users (username, email) VALUES (?, ?)");
$stmt->bind_param("ss", $username, $email);

// Validate user input
$username = $_POST['username'];
$email = $_POST['email'];

if(empty($username) || empty($email)) {
    echo "Please fill in all fields";
} else {
    // Execute the statement
    $stmt->execute();
    echo "User added successfully";
}

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