Comment charger ces images plus rapidement? J'ai une boucle qui affiche des images de profils et les photos prennent de 1 à 2,5 secondes pour charger. Pas l'un après l'autre mais à peu près tout à la fois. J'ai essayé de redimensionner avec PHP mais cela n'a vraiment rien changé. Je ne suis pas sûr de savoir comment je peux précharger ces images avec une telle boucle. Que puis-je faire pour augmenter la performance de la charge?Comment charger des images plus rapidement?
PHP
$query = "SELECT `photoid` FROM `site`.`photos` WHERE `profileid`='$profileid'";
try{
$getphotos = $connect->prepare($query);
$getphotos->execute();
while ($array = $getphotos->fetch(PDO::FETCH_ASSOC)){
echo '<div id="photo"><img src="photoprocess.php?photo='.$array['photoid'].'"></div>';
}
} catch (PDOException $e) {
echo $e->getMessage();
}
CSS
#photo img {
max-width:100%;
max-height:100%;
}
photoprocess.php
$photoid = $_GET['photo'];
$query = "SELECT `ext` FROM `site`.`photos` WHERE `photoid`='$photoid'";
try{
$getphotos = $connect->prepare($query);
$getphotos->execute();
$array = $getphotos->fetch(PDO::FETCH_ASSOC);
} catch (PDOException $e) {
echo $e->getMessage();
}
$ext = $array['ext'];
$image = imagecreatefromjpeg('userphotos/'.$photoid.''.$ext.'');
$imagearray = imagejpeg($image, null);
header('Content-type: image/jpeg');
echo $imagearray;
J'ai aussi des contrôles d'extension comme "si déclarations" mais ceux qui ne peuvent pas le ralentir autant.
À quoi ressemble le reste de la page html? Avez-vous beaucoup de fichiers css ou javascript? Le changeur de sorts n'en chargera que plusieurs à la fois et si vous en avez trop, ils devront tous être téléchargés avant que les images ne commencent à charger. Vous pouvez utiliser la chronologie du réseau dans les outils de développement ou les plugins de votre navigateur pour voir quand chaque URL est téléchargée et combien de temps cela prend. –
Aussi, en général, c'est une mauvaise idée de faire ''. Au lieu de cela, vous devriez faire ' '. Static fichiers peuvent être mis en cache par le serveur et le navigateur et peut-être même l'ISP du visiteur.Les fichiers PHP sont très difficiles à mettre en cache –