What are best practices for handling special characters in PHP files and database connections?

Special characters in PHP files and database connections can cause issues with encoding and potentially lead to security vulnerabilities such as SQL injection attacks. To handle special characters properly, it is recommended to use prepared statements for database queries and ensure that PHP files are saved with UTF-8 encoding.

// Example of using prepared statements for MySQL database connection
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

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

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

$stmt = $conn->prepare("INSERT INTO myTable (column1, column2) VALUES (?, ?)");
$stmt->bind_param("ss", $value1, $value2);

$value1 = "Special characters: é, ü, ç";
$value2 = "Another special character: ñ";

$stmt->execute();

$stmt->close();
$conn->close();