What best practices should be followed when retrieving data from MySQL queries in PHP?

When retrieving data from MySQL queries in PHP, it is important to use prepared statements to prevent SQL injection attacks and ensure data security. Additionally, it is recommended to properly sanitize and validate user input before executing the query to avoid unexpected results. Finally, always remember to handle errors gracefully to provide a better user experience.

// Example of retrieving data from MySQL using prepared statements

// Establish a database connection
$mysqli = new mysqli("localhost", "username", "password", "database");

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

// Prepare a SQL query
$stmt = $mysqli->prepare("SELECT id, name FROM users WHERE id = ?");
$id = 1;
$stmt->bind_param("i", $id);

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

// Bind the results to variables
$stmt->bind_result($userId, $userName);

// Fetch the results
$stmt->fetch();

// Output the results
echo "User ID: " . $userId . "<br>";
echo "User Name: " . $userName;

// Close the statement and connection
$stmt->close();
$mysqli->close();