[RESOLU] Formulaire, la variable Textarea ne passe pas ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Formulaire, la variable Textarea ne passe pas ?

Re: [RESOLU] Formulaire, la variable Textarea ne passe pas ?

par two3d » 16 avr. 2025, 17:11

Salut, tu as oublié un underscore à ton name : <TEXTAREA name="texte mail"...

Re: Formulaire, la variable Textarea ne passe pas ?

par petite fée » 13 avr. 2025, 11:36

... Et donc j'ai modifié mon chargement, en passant par JQuery qui est maintenant :

Code : Tout sélectionner

<SCRIPT LANGUAGE="JavaScript"> jQuery(function($){ $('#loading').hide(); // On masque le gif au chargement de la page $('#Envoyer').click(function(e){ // Affichage du gif de chargement $('#loading').show(); }); }); </SCRIPT> <div id="loading"><img src="img/loading.gif" alt="Chargement...">Chargement...</div> <!-- Élément d'animation de chargement -->
et plus de conflits javascript.

Voilà si ça peut vous servir !

Re: Formulaire, la variable Textarea ne passe pas ?

par petite fée » 13 avr. 2025, 10:27

Alooors, ça peut en intéresser certain(e)s... ?
en enlevant petit à petit des choses j'ai trouvé ce qui gène, sans comprendre pourquoi pour l'instant :

j'avais mis un script de chargement (ma page peut être lourde).
<script>
function disableButtonAndSubmit(event) {
event.preventDefault(); // Empêche le comportement par défaut du formulaire
const button = event.target; // Récupère le bouton cliqué
button.disabled = true; // Désactive le bouton
button.value = "Traitement en cours... Merci de patienter."; // Change le texte du bouton

// Affiche l'animation de chargement
const loading = document.getElementById('loading');
loading.style.display = 'block';

// Soumet le formulaire après un court délai
setTimeout(() => {
button.form.submit(); // Soumet le formulaire
}, 1000); // Délai de 1 seconde
}
</script>
et le bouton :
 <input type="submit" name="Envoyer" id="Envoyer" class="btn btn-sm btn-danger" title="Envoyer" data-placement="bottom" data-toggle="tooltip" value="Envoyer" onclick="disableButtonAndSubmit(event)">
et si j'enlève mon script ça fonctionne, je récupère bien ma variable post du texte area.
sur mon Textarea j'ai un éditeur de texte : Nice éditor :

Code : Tout sélectionner

<script type="text/javascript"> bkLib.onDomLoaded(function() { bkLib.onDomLoaded(function() { nicEditors.allTextAreas() }); }); </script>
et apparemment c'est ça qui bloque, les deux ne vont pas ensemble.
Si vous savez pourquoi, ou comment faire en sorte que je garde mon préload et mon éditeur, je suis preneuse !

Re: Formulaire, la variable Textarea ne passe pas ?

par or 1 » 13 avr. 2025, 10:06

que contiennent les variables $_GET et $_POST une fois le formulaire soumis ?

Re: Formulaire, la variable Textarea ne passe pas ?

par petite fée » 13 avr. 2025, 09:44

En plus clair, sur ma page 2 j'ai :

Code : Tout sélectionner

echo $_POST['texte_mail'];

Re: Formulaire, la variable Textarea ne passe pas ?

par petite fée » 11 avr. 2025, 20:48

Bonjour Or 1,

et merci de ton aide.
La variable POST contient ce que j'ai affiché dans la zone texte, AVANT de le modifier et de cliquer sur "envoyer".

Re: Formulaire, la variable Textarea ne passe pas ?

par or 1 » 11 avr. 2025, 19:20

que contiennent les variables $_GET et $_POST une fois le formulaire soumis ?
quel est le code pour afficher le contenu du textarea ?

Formulaire, la variable Textarea ne passe pas ?

par petite fée » 11 avr. 2025, 16:05

Bonjour à tou(te)s

alors c'est vraiment un problème de base, mais je n'ai plus d'idée...

J'ai un formulaire, avec un sujet, et un texte.

voici mes deux champs, dont le premier contenu est suggéré.

Code : Tout sélectionner

<input name="sujet_mail" type="text" id="sujet_mail" size="100" value="<?php echo $sujet; ?>"> <TEXTAREA name="texte mail" style="width:80%" rows="6"><?php echo $contenu; ?></TEXTAREA>
(je vous passe le code autour). Sur ma page 2, après validation, j'affiche le contenu des variables récupérées, potentiellement modifié.
Et c'est là que ça ne va pas :
je récupère bien le sujet du mail modifié, mais le contenu du Textarea reste celui d'origine, sans tenir compte de mon nouveau texte.

Le formulaire fonctionne bien, puisque le champ "sujet" fonctionne. J'ai essayé de créer d'autres textarea, et pour tous j'ai le même problème.

il y a d'autres pages de mon application qui utilisent des formulaires et des textarea, et qui fonctionnent. alors là je ne sais plus quoi tester... :roll: