Bonjour,
Configuration actuelle
Version de WordPress : 5.2.2
Adresse du site : la version test est en local. Wampserver 3.1.0 64 bit x64
PHP 5.6.31, 7.0.23, 7.1.9 / MySQL 5.7.19
Thème utilisé : Twenty Sixteen
Je développe en local une nouvelle version du site http://coutglobal.fr/ avec WordPress, avant de la placer en ligne. Le site est essentiellement constitué de pages car il renferme beaucoup de contenu. De plus il permettra de mettre en ligne une application très utile pour l'analyse de risque dans les projets d'investissement. Cette application, qui fonctionne parfaitement, se trouve actuellement à l'adresse http://coutglobal.fr/SimuRisque/somRisq.html, en attendant d'être intégrée au site. Cette application contient du html et du javascript, dont un formulaire fait appel à un fichier php.
<form action="simuRisq-b.php" method="post" name="lesva" target="_blank">
Mon problème : j'ajoute une page dans le site WP dans laquelle je copie intégralement le code source du fichier somRisque.html mentionné ci-dessus. La page affiche alors une copie identique à celle du fichier initial. En revanche, les boutons "Ajouter" et "Valider" n'appellent pas les scripts JS qui sont placés au début du fichier, alors que ces mêmes boutons fonctionnent dans le code initial.
En regardant plus attentivement le code créé par WP après le copier-coller, j'ai constaté que de nombreuses instructions JS ont été placées entre les balises <p> et </p> ce qui, je suppose, les transforme en html. Si cette remarque est correcte, il est normal que les boutons "Ajouter" et "Valider" restent muets. J'ai reproduit cet ajout dans le fichier somRisq.html mentionné ci-dessus, dans la déclaration de la variable "tableau".
1 2 3 4 5
| function ajouterLigne() {
// déclaration des variables
var oInput; var oRow; var oCell; var oText;
var ind;
<p>var tableau = document.getElementById("tablo");</p> |
Le bouton Ajouter ne répond plus, alors qu'il fonctionne sans les balises.
Il semble donc que le copier-coller dans WP d'un fichier html contenant du JS modifie le code JS en y ajoutant des balises supplémentaires qui le rendent inopérant. Comment faire alors pour récupérer du code existant?
Ce constat est confirmé par le fait que le bouton Simulation, qui n'appelle pas de JS, fonctionne correctement. Il appelle un fichier php que j'ai placé dans le thème enfant en plus des fichiers "style.css" et "functions.php". Mais il affiche une page (*) contenant le message suivant :
Oups ! Cette page est introuvable
. Si je place le fichier dans le répertoire principal (cgrisq), j'obtiens le même message. Où dois-je placer le fichier php pour qu'il le trouve?
(*) http://localhost:8000/cgrisq/page-d-...simuRisq-b.php
Ce message étant très long, je résume ici les 2 problèmes.
1/ Le copier-coller d'un code html contenant du JavaScript introduit des balise <p>
</p> dans le script JS qui le rendent inopérant. Les boutons des formulaires ne répondent donc pas.
2/ Le bouton du formulaire qui appelle le fichier php répond bien car il n'est pas dans les scripts JS. Cependant, il ne trouve pas le fichier php. Où dois-je le placer?
Merci pour votre aide qui me serait plus qu'utile, indispensable.
Partager