Bonjour,

J'ai posté ma question dans les commentaires de la vidéo, mais je pense que ce forum est plus approprié, voici le problème :

Bonjour, j'ai un petit problème avec le redimensionnement des images (vers 48:00 dans la vidéo).
Je précise que je réalise ce tuto sur un hébergement mutualisé OVH, que je suis en php5.4 et que phpinfo m'indique:"GD Support enabled" et "GD Version bundled (2.0.34 compatible)".

Malgré tout lorsque j'envoie une nouvelle image dans une réalisation, le thumbnail ne se créer pas et j'ai pour message d'erreur :
"Warning: imagejpeg(/homez.170/firehall/www/php/img/works/25_150x150.jpg): failed to open stream: No such file or directory in /homez.170/firehall/www/php/lib/image.php on line 63" (j'ai remplacé les dossiers racines par *path*, mais ils correspondent bien).
Et donc la ligne 63 de lib/image.php :
"case IMAGETYPE_JPEG: imagejpeg($image_resized, $output, 80); break;"

J'ai copié le site en local (avec Wampserver) et il n'y pas de problème, je suis donc quasi-sur que le problème vient de mon hébergement... Reste à savoir quelle est la solution... :/

J'ai téléchargé la source de lib/image.php et j'ai toujours la même erreur.

9 réponses


Je pense que tu t'es déjà posé la question, mais est-ce que ton dossier est disponible en écriture, un bon petit

chmod -R 777 /homez.170/firehall/www/php/img/

devrait faire l'affaire normalement

Nicks
Auteur

Merci pour ta réponse, j'ai effectivement vérifié les droits en écritures sur les dossiers. J'ai passé le dossier principal (comprenant l'appli) et les dossiers img et works en 755 (c'est le max sur un mutu ovh).

Sans succès, donc :(

Et puis les images qui ne passent pas par le script de redimension, sont bien transférées dans ce même dossier, donc je doute que ce soit un problème de chmod?

pareil meme probleme chez moi

Nicks
Auteur

Entretemps, j'ai posé la question à OVH, dont voici la réponse :

"C'est n,ormal que cette erreur s'affiche , vu que le fichier "25_150x150.jpg" n'existe pas dans le dossier "Workers".
Vous avez besoin, dans ce cas, de mettre a jour l'URL en question."

Voilà, voilà... On entend beaucoup de mal d'OVH ces derniers temps, voilà qui n'arrange rien.

As-tu tenter un opendir() sur le dossier en question pour voir ce qu'il te retourne, peut être un soucis au niveau du chemin que tu demande, j'ai pas vu le tuto mais fais des echo sur tes chemin pour voir.

J'ai peut etre un début de piste
c'est dans la variable output, un slash me manquait au début pour avoir le chemin complet

A la ligne 13 dans le fichier image.php au moment ou l'on définit le chemin vers l'image

$pathinfo = pathinfo(trim($file, '/')); 
devient    
$pathinfo = pathinfo(trim($file));

Bonsoir,
Je suis sur ce problème depuis ce matin c'est absolument horrible je suis à deux doigts de m'arracher les cheveux.
Dans le même cas que vous, chez OVH.
En suivant le conseil de Sylvain le redimensionnement s'effectue, mais ne s'affiche pas.
Sur mon index le lien de l'image est "../img/works//_150x150." rien ne s'affiche.
Quand je met le bon lien dans la barre d'adresse "../img/works/18_150x150.jpg" l'image redimensionné est là !
Mais impossible de savoir d'ou ça vient .. :(

Bonjour,

Hum dans ton exemple, il manque l'id de l'image non ?

Cordialement

C'est le nom de l'image qui manque, mais il est choisi en fonction de l'id. Et a chaque image il augmente de 1
Le soucis est que si on supprime une image l'id ne va pas suivre, il faut donc le nom de l'image

Code original :

<img src="<?= WEBROOT; ?>img/works/<?= resizedName($work'image_name'], 150, 150); ?>" alt="">