Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1358 connectés 

  FORUM HardWare.fr
  Programmation
  Javascript/Node.js

  Javascript concatenation Captcha ne s'affiche pas

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Javascript concatenation Captcha ne s'affiche pas

n°2463858
erwan83
Du Shift DEL tu te méfieras !
Posté le 09-02-2024 à 06:54:02  profilanswer
 

Bonjour. j'utilise hcaptcha sur mon site et sur les pages en HTML, il fonctionne normalement
 
Là, je dois lancer un décompte JS qui ouvre un formulaire (pour un faucet crypto) donc je fais mon décompte en JS et ensuite j'affiche le formulaire avec innerHTML
 
Or, le frame du captcha est inopérant.
 
Voici un code qui marche en HTML
 

Code :
  1. <form action="https://www.ypikay.com/verifyshrinkstep1.php" method="POST">
  2.   <div class="groslien">Shrink pays once every 24 hours</div><br>
  3.   <div class="grostexte">Please solve captcha and submit your FaucetPay email to be credited <b>3</b> BTC Satoshi</div><br>
  4.   <div class="h-captcha" data-sitekey="xxxxxx-64b8-4019-9cca-040b99e803cc"></div><br>
  5.   <div class="grostexte">Your FaucetPay email :&nbsp;&nbsp;<input type="text" name="faucetpay" style=""></input>
  6.    <input type="image" id="image" alt="Proceed" src="bouton-submit.png" />
  7.    </div>
  8.   </form>


 
Voici le code qui refuse de marcher en JS
 

Code :
  1. document.getElementById("demo" ).innerHTML = '<form id="faucet" method="POST" action="faucet_payeur.php">' +
  2. '<input type="hidden" name="user" value="<?php echo $user; ?>">' +
  3. '<div class="h-captcha" data-sitekey="xxxxxx-64b8-4019-9cca-040b99e803cc"></div>' +
  4. '<input type="hidden" name="origin" value="ypikay_faucet">' +
  5. '<input type="hidden" name="time" value="' + new Date().getTime() + '">' +
  6. '<input type="submit" value="CLAIM FROM FAUCET"></input></form>';


Dans le code ci-dessus tout s'affiche sauf le captcha
J'ai bien mis le script pour le captcha au même endroit (dans le <head> )
 
Any ideas ?


Message édité par erwan83 le 09-02-2024 à 06:58:12

---------------
http://www.ypikay.com
mood
Publicité
Posté le 09-02-2024 à 06:54:02  profilanswer
 

n°2463860
mechkurt
Posté le 09-02-2024 à 07:48:58  profilanswer
 

Ton code dans le head doit attendre la fin de chargement de la page (onload ou domready) pour la parser à la recherche d'un div avec class="h-captcha" et/ou data-sitekey="xxxxxx-64b8-4019-9cca-040b99e803cc".
 
Au moment ou il la parse ce contenu n'existe pas, il faut re déclencher un parsing de la page et/ou utiliser une autre méthode pour ton form, il pourrait être présent mais en display:none par exemple...


---------------
D3
n°2463863
erwan83
Du Shift DEL tu te méfieras !
Posté le 09-02-2024 à 08:18:18  profilanswer
 

Ahhh ça se complique !
donc je dois mettre une requete de controle en JS dans mon head et rebalancer le script une fois que j'affiche le Bouton c'est bien ça ?


---------------
http://www.ypikay.com
n°2463866
erwan83
Du Shift DEL tu te méfieras !
Posté le 09-02-2024 à 10:29:19  profilanswer
 

Bon je dois dire que je n'y arrive pas...  
Si quelqu'un pouvait me donner un exemple SVP ?


---------------
http://www.ypikay.com
n°2463871
mechkurt
Posté le 09-02-2024 à 13:10:24  profilanswer
 

Tu peux essayer d'ajouter ton script dans le head en même temps que ton innerHTML, comme ça ton contenu existe quand il est chargé et il peut afficher le captcha, problem solved.
 
...en vrai c'est crade mais bon. :o  
En plus propre, regarder si tu peux actualiser les recaptcha après l'ajout de contenu en javascript.
Sinon le plus simple et qui devrait aussi fonctionner c'est d'avoir ton contenu déjà dans la page mais "masqué" et que tu fasse un display:none; => display:block: en javascript.


---------------
D3
n°2463879
erwan83
Du Shift DEL tu te méfieras !
Posté le 09-02-2024 à 16:37:46  profilanswer
 

ah oui effectivement ça pourrait être la solution...
en passant par le display


Message édité par erwan83 le 09-02-2024 à 16:38:09

---------------
http://www.ypikay.com
n°2463880
mechkurt
Posté le 09-02-2024 à 17:53:03  profilanswer
 

Ça fonctionne en tout cas avec le reCaptcha de Google dans des formulaires de contact de type "modal" comme ce qui se fait dans Foundation https://get.foundation/sites/docs/reveal.html


---------------
D3

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Javascript/Node.js

  Javascript concatenation Captcha ne s'affiche pas

 

Sujets relatifs
Comportement d'événement Javascript bizarre[Javascript - React] useRef dans map() ne fonctionne pas
[Javascript - Nodejs - Mongoose] Problème Fetch PUT form-dataExercice html, php, mysql, javascript
Mediawiki : pb avec génération de javascript dans un articleEncodage RSA Javascript Vs Java
Javascript suggestion dans textareaJavascript API / Recuperer le resultat
Concaténation complexe[Javascript] - Supprimer un élément ajouté dynamiquement
Plus de sujets relatifs à : Javascript concatenation Captcha ne s'affiche pas


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR