What are common pitfalls when using PHP to display images from a database?

Common pitfalls when displaying images from a database in PHP include not properly handling image data, not setting the correct content type, and not escaping user input to prevent SQL injection attacks. To solve these issues, make sure to retrieve the image data correctly from the database, set the appropriate content type header, and use prepared statements to prevent SQL injection.

// Retrieve image data from the database
$imageId = $_GET['image_id'];
$query = "SELECT image_data, image_type FROM images WHERE id = ?";
$stmt = $pdo->prepare($query);
$stmt->execute([$imageId]);
$image = $stmt->fetch();

// Set the appropriate content type header
header('Content-Type: ' . $image['image_type']);

// Output the image data
echo $image['image_data'];