Aujourd'hui, mon site Web affichait des erreurs sur les utilisateurs finaux sur une seule page, car une image était manquante. C'est une image stockée dans jseblod et accessible à l'aide de la nouvelle JImage () de mon modèle.
Existe-t-il une directive sur la manière de traiter cette erreur? JImage génère (littéralement) au moins 3 erreurs différentes. Cela indique-t-il que je devrais simplement utiliser try {} catch blocks ou existe-t-il un moyen recommandé de gérer une image manquante?
Ouais, utiliser des exceptions de capture serait la meilleure idée à mon avis, j'utiliserais alors la fonction Joomla enqueueMessage
pour afficher un message d'erreur d'utilisateur ami, comme ceci:
try
{
// Try to do something with the image using 'JImage'
}
catch (Exception $e)
{
// The image was missing
JFactory::getApplication()->enqueueMessage(JText::_('MISSING_IMAGE'), 'error');
// Error message = $e->getMessage();
// I'd then most likely log the actual PHP error to a file using 'JLog'
}
J'espère que cela t'aides
Vous avez quelques options, mais la solution la plus simple serait d’exécuter un ifexists sur le src avant d’exécuter jimage. C'est à dire:
Si (JFile :: existe ($ src)) {// Lancer jimage ici}
Vous pouvez également ajouter les images à un tableau et en exécuter une en fonction de votre sortie et de votre fonction.