Bonjour à tous,
Je vous explique mon problème. Quand j'upload une image nom.png, je veux la redimenssionner en créant un nouveau fichier qui s'appelle nom_150x150.png, jusque là, pas de soucis.
C'est lorsque je veux afficher l'image redimenssionnée que ça ne fonctionne pas. En inspectant les éléments, je remarque dans la balise img il cherche dans ce lien img/works/_150x150., je remarque donc qu'il manque le nom et l'extension du fichier. Mais je ne trouve pas mon erreur dans le code :
image.php :
function resizedName($file, $width, $height){
$info = pathinfo($file);
$return = '';
if($info['dirname'] != '.'){
$return .= $info['dirname'] . '';
}
$return .= $info['filename'] . "_$width". "x$height." . $info['extension'];
return $return;
}
index.php :
<div class="row">
<?php foreach ($works as $k => $work): ?>
<div class="col-sm-3">
<a href="<?= WEBROOT; ?>realisation/<?= $work['slug']; ?>">
<img src="<?= WEBROOT; ?>img/works/<?= resizedName($work['image_name'], 150, 150); ?>" alt="">
<h2><?= $work['name']; ?></h2>
</a>
</div>
<?php endforeach ?>
</div>
J'ai vérifier aussi si la création du fichier fonctionnait correctement, il existe bien.
Je vous remercie d'avance !
Bonjour,
si tu var_dump($works);die(); qu'obtiens tu? Es-tu sur que $work['image_name'] n'est pas vide? (le problème ne viens pas de la fonction resizedName)
Bonjour,
Faite un var_dump($info); et vous trouverez toutes les infos nécessaire sur le fichier car votre $info['filename'] est vide.