Bonjour,
Foxcontact est une extension commerciale, ce qui limite le nombre d'utilisateurs francophone.
De plus, le problème est assez rare donc difficile de vous aider même avec la meilleure volonté.
Ayant un client avec cette extension, j'ai analysé son fonctionnement.
Le chargement des fichiers "pièces jointes" se fait en ajax, c'est à dire que le transfert utilise un script ecrit en javascript, plus précisément en jquery.
\media\com_foxcontact\js\base.min.js
Cela permet d'effectuer un transfert plus efficace, rapide et sans changement de page ou d'appui sur le bouton "soumettre" (envoi du formulaire).
Toutefois, il y a un risque de conflit javascript si vous utilisez d'autres extensions tierces ou un template avec framework.
Le plus simple, c'est d'ouvrir la console du navigateur (touche F12) et de vérifier si on a des erreurs ou des avertissements.
A mon avis, c'est la cause la plus probable.
Le plus simple étant :
1. de vérifier ce qui se dit dans la console
2. puis de voir la liste des fichiers javascript chargés (bouton droit / code source de la page, on relève les fichiers .js)
3. tester les pièces jointes avec des fichiers simples comme des images au format jpg sans espace, caractères accentués ou majuscule dans les noms de fichiers.
vérifier simultanément ce qui se passe dans la console ( avec le détail des requêtes ) : http://prntscr.com/pknkbb
Dans la capture d'écran, on peut voir que le script envoi le fichier vers un traitement upload en php
Les fichiers sont automatiquement renommés (pour des raisons de sécurité) et transférés dans le repertoire components\com_foxcontact\uploads
Un message est envoyé dans le composant natif "messagerie privée" avec les liens vers les fichiers.
On a également les limites de taille de fichiers ainsi que des blocages habituels de sécurité.
En résumé, cela fonctionne très bien avec les dernières versions de php et de Joomla. J'ai pensé également à un problème de droits d'écriture mais comme cela a déjà été écarté, il ne reste plus que le problème de conflit js. Précision importante : j'utilise jch optimize mais je n'ai pas trop touché à l'ordre de chargement des fichiers js et je teste toujours avant d'aller plus loin dans l'optimisation.
Bon courage ! N'hésitez pas à nous indiquer si vous avez réussi à trouver la réponse à votre problème.
Foxcontact est une extension commerciale, ce qui limite le nombre d'utilisateurs francophone.
De plus, le problème est assez rare donc difficile de vous aider même avec la meilleure volonté.
Ayant un client avec cette extension, j'ai analysé son fonctionnement.
Le chargement des fichiers "pièces jointes" se fait en ajax, c'est à dire que le transfert utilise un script ecrit en javascript, plus précisément en jquery.
\media\com_foxcontact\js\base.min.js
Cela permet d'effectuer un transfert plus efficace, rapide et sans changement de page ou d'appui sur le bouton "soumettre" (envoi du formulaire).
Toutefois, il y a un risque de conflit javascript si vous utilisez d'autres extensions tierces ou un template avec framework.
Le plus simple, c'est d'ouvrir la console du navigateur (touche F12) et de vérifier si on a des erreurs ou des avertissements.
A mon avis, c'est la cause la plus probable.
Le plus simple étant :
1. de vérifier ce qui se dit dans la console
2. puis de voir la liste des fichiers javascript chargés (bouton droit / code source de la page, on relève les fichiers .js)
3. tester les pièces jointes avec des fichiers simples comme des images au format jpg sans espace, caractères accentués ou majuscule dans les noms de fichiers.
vérifier simultanément ce qui se passe dans la console ( avec le détail des requêtes ) : http://prntscr.com/pknkbb
Dans la capture d'écran, on peut voir que le script envoi le fichier vers un traitement upload en php
Les fichiers sont automatiquement renommés (pour des raisons de sécurité) et transférés dans le repertoire components\com_foxcontact\uploads
Un message est envoyé dans le composant natif "messagerie privée" avec les liens vers les fichiers.
On a également les limites de taille de fichiers ainsi que des blocages habituels de sécurité.
En résumé, cela fonctionne très bien avec les dernières versions de php et de Joomla. J'ai pensé également à un problème de droits d'écriture mais comme cela a déjà été écarté, il ne reste plus que le problème de conflit js. Précision importante : j'utilise jch optimize mais je n'ai pas trop touché à l'ordre de chargement des fichiers js et je teste toujours avant d'aller plus loin dans l'optimisation.
Bon courage ! N'hésitez pas à nous indiquer si vous avez réussi à trouver la réponse à votre problème.
Commentaire