caeruleus Posted September 20, 2013 Share Posted September 20, 2013 (edited) Bonjour, Depuis la migration de 1.5.4.1 vers 1.5.5.0 je ne peut plus utiliser les balises <iframe> et <form> et <object> dans l'éditeur HTML des pages CMS alors que cela était possible en 1.5.4.1. J'obtiens le message d'erreur "Le champ description (Français (French)) est invalide." j'ai testé l'installation de la v1.5.5.0 au propre (sans passer par une maj) sur un serveur de test, et le problème est identique. PS: J'ai pourtant coché Dans le BO "autoriser les iframes" dans Preférences générales Est-ce que quelqu'un a rencontré ce problème, ou aurais une solution ? Merci. Edited September 25, 2013 by caeruleus (see edit history) Link to comment Share on other sites More sharing options...
caeruleus Posted September 24, 2013 Author Share Posted September 24, 2013 Est-ce que quelqu'un a rencontré ce problème ? Est-ce un bug ou bien une volonté délibérée des concepteurs de Prestashop ? Merci. Link to comment Share on other sites More sharing options...
Gregory Roussac Posted September 25, 2013 Share Posted September 25, 2013 Hello, De ce coté. https://github.com/PrestaShop/PrestaShop/commit/41af17e06bf116d1f53a4257f2d350740cb79921 Cordialement Link to comment Share on other sites More sharing options...
caeruleus Posted September 25, 2013 Author Share Posted September 25, 2013 (edited) Merci infiniment ! Cette correction à permis de remédier à mon problème d'iframe dans les CMS, par contre la balise <form> pour insérer un formulaire dans une page CMS est refusée alors que cela étais possible en 1.4.4.1 Je vais essayer d'y remédier en insérant mon formulaire avec un <iframe> puisque cela fonctionne depuis la correction. Au niveau de la correction de ton lien, en cliquant sur le bouton "view file @" on obtient le contenu complet du fichier et en le comparant avec mon fichier issu de 1.5.5.0 il y a environ 45 lignes (éparpillées dans le fichier) qui comportent des différences de programmation (j'utilise ConText éditeur gratuit pour la comparaison entre 2 fichiers). Que dois-je faire ? conserver mon fichier 1.5.5.0 modifié avec juste ce qui m'intéressais, ou bien le remplacer intégralement par le fichier disponible sous le bouton "view fils @" ? Encore merci Edited September 25, 2013 by caeruleus (see edit history) Link to comment Share on other sites More sharing options...
Gregory Roussac Posted September 25, 2013 Share Posted September 25, 2013 Bonjour, C'est la correction d'un collègue. Je ne vois pas trop pourquoi form ne passerait pas mais il faut retester. Sinon tout simplement ajoutez le vert et retirez ce qui est en rouge dans ce fichier ? Cordialement Link to comment Share on other sites More sharing options...
caeruleus Posted September 25, 2013 Author Share Posted September 25, 2013 (edited) Oui je pense avoir bien fait la modif (copier/coller puis suppression de la ligne rouge [-] Par contre le fichier complet comporte environ 45 autres lignes différentes (après la modif conseillée en #3) Voici le code qui marchais très bien en insertion CMS avec 1.4.4.1 et qui est refusé par 1.5.5.0 : <h2>Convertisseur oz / ml</h2> <form> <div align="right"> <p align="center"><input onkeyup="this.form.ml.value=(this.value*29.5735295625).toFixed(2);" type="text" name="fl_oz" size="20" /> <strong>fl.oz. (US)</strong></p> <p align="center"><input onkeyup="this.form.fl_oz.value=(this.value/29.5735295625).toFixed(2);" type="text" name="ml" size="20" /><strong> ml </strong></p> <p align="center"><input type="reset" name="Submit" value="Effacer" /></p> </div> </form> <p align="center">Indiquez le volume à convertir dans l'une des cellules (oz ou ml) la conversion est automatique.<br /> Cet outil permet la conversion dans les deux sens oz/ml et ml/oz.<br /> Utilisez le point et non pas la virgule pour les décimales.</p> Cordialement. Edited September 25, 2013 by caeruleus (see edit history) Link to comment Share on other sites More sharing options...
Gregory Roussac Posted September 25, 2013 Share Posted September 25, 2013 A priori je pense que peut être ce code n'est pas valide XHTML. Il manque un fieldset dans le form en tout cas. Mais je vérifierais demain. Cordialement Link to comment Share on other sites More sharing options...
Gregory Roussac Posted September 25, 2013 Share Posted September 25, 2013 A priori ce n'est pas le form mais le onkeyup. Il faudrait rajouter à la liste sur cette ligne des balises autorisées https://github.com/PrestaShop/PrestaShop/blob/development/classes/Validate.php#L405 et surtout le sortir de cette ligne https://github.com/PrestaShop/PrestaShop/blob/development/classes/Validate.php#L395 Attention c'est ouvrir une porte sur la sécurité de l'appli. Cordialement 1 Link to comment Share on other sites More sharing options...
caeruleus Posted September 25, 2013 Author Share Posted September 25, 2013 (edited) Merci pour ces infos, je comprend mieux maintenant ce qui bloque. Pas question de modifier l'appli PS et de prendre le risque d'une faille de sécurité, surtout que je devrais refaire cette modification à chaque mise à jour de la base PS puisque cette interdiction du "onkeyup" semble être une volonté des concepteurs. J'ai donc remédié au problème en incorporant mon code récalcitrant dans une page html et en l'insérant dans une page CMS avec un <iframe> puisque cette fonction marche à nouveau après la correction. (en espérant que cela sera toujours le cas lors des prochaines mises à jour). Encore merci, pour cette aide précieuse ! Edited September 25, 2013 by caeruleus (see edit history) Link to comment Share on other sites More sharing options...
frontaldusud Posted October 25, 2013 Share Posted October 25, 2013 Bonjour, je suis confrontés au meme soucis concernant la balises form dans une page cms, presta 156 débutant en code je n'ai pas compris la manip pour "J'ai donc remédié au problème en incorporant mon code récalcitrant dans une page html et en l'insérant dans une page CMS avec un <iframe>... pourrais tu me donner le code en exemple, merci caeruleus Link to comment Share on other sites More sharing options...
frontaldusud Posted October 25, 2013 Share Posted October 25, 2013 Bon j'ai trouvé la solution pour utiliser avec iframe mais par contre (je m'adresse au dev. de prestashop) pourquoi on ne peut pas utiliser la balise FORM dans les CMS ? Merci de votre réponse Link to comment Share on other sites More sharing options...
Gregory Roussac Posted October 25, 2013 Share Posted October 25, 2013 Hello, A mon avis c'est plutôt un script javascript qui doit coincer. Par ce que les forms sont bien autorisés si vous cochez la mal nommée option "autoriser les iframes" dans les préférences. https://github.com/PrestaShop/PrestaShop/blob/development/classes/Validate.php#L392 Cordialement Link to comment Share on other sites More sharing options...
frontaldusud Posted October 25, 2013 Share Posted October 25, 2013 j'ai beau activer ou desactiver les iframe rien ne change, je vois bien mon formulaire dans la page cms avec l'erreur inscrite en haut mais rien sur mon site, je suis en version 1.5.6 Link to comment Share on other sites More sharing options...
Gregory Roussac Posted October 25, 2013 Share Posted October 25, 2013 Pouvez vous nous copier coller dans une balise code votre code html ? Cordialement Link to comment Share on other sites More sharing options...
caeruleus Posted October 25, 2013 Author Share Posted October 25, 2013 Bonjour, @ Frontaldusud D'après ta capture écran, tu semble copier coller ton code de formulaire dans l'éditeur HTML de ta page CMS de prestashop. Ce n'est pas du tout comme ça que j'ai procédé ! J'ai fait une page HTML (avec un éditeur quelconque) qui comporte mon formulaire, que j'ai ensuite publiée dans un dossier créé par moi-même via FTP sur le serveur de ma boutique (ex : www.mon_site.com/mon_dossier/ma_page.htm). et ensuite j'ai créé une page CMS dans PrestaShop dans laquelle j'ai (avec l'éditeur HTML de cette page) inséré uniquement les codes correspondant à l'IFRAME pour appeler le fichier "ma_page.htm" dans un cadre transparent. En langage clair : j'ai une page CMS qui appelle une page HTML (indépendante de PrestaShop) dans un <iframe>. Je ne sait pas si c'est la meilleure façon de faire, mais pour moi ça marche correctement (pour le moment). @+ Link to comment Share on other sites More sharing options...
caeruleus Posted October 25, 2013 Author Share Posted October 25, 2013 Au cas ou je n'aurais pas su bien m'expliquer, voici le code à insérer dans ta page CMS : <center><iframe name="formulaire" src="..//formulaire/formulaire.htm" frameborder="0" scrolling="no" width="500" height="600"></iframe></center> Les valeurs width et height sont à définir suivant les tailles en pixel de ton formulaire. La balise SCR appele ta page HTML qui contient ton formulaire. La page "formulaire.htm" contient le codage HTML de ton formulaire. @+ Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now