Problème d'envoi d'un formulaire dans un topic déjà existant

2 participants

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu Problème d'envoi d'un formulaire dans un topic déjà existant

Message par Swidix Mer 15 Déc 2021 - 16:34

Pour la modération : Je suis navré de ne pas avoir donné de nouvelle sur mon précédent post, pensant recevoir un mail lorsqu'il y avait une réponse, je n'ai pas eu l'idée de retourner voir si mon sujet avait reçu un message.

Détails techniques

Version du forum : phpBB3
Poste occupé : Membre
Navigateur(s) concerné(s) : Mozilla Firefox
Personnes concernées par le problème : Moi uniquement
Lien du forum : https://lspd-online.forumactif.com

Description du problème

(Je réécris mon message qui s'est supprimé grrr!)

Bonjour, je suis en train de faire un formulaire qui permettra automatiquement aux membres de formaliser leur saisie et de la poster dans un topic déjà existant.

Quand le formulaire est envoyé, une alerte est envoyée indiquant :
"Un nouveau message vient d'être ajouté pendant que vous écriviez le vôtre.
Vous pouvez consulter les derniers messages postés ci-dessous et ainsi décider si vous voulez le modifier ou l'enregistrer."


Or, aucun utilisateur n'a posté de message entre temps... Je ne vois pas d'où vient le problème, voici mon code qui transmet les instructions de création de message à forumactif.

Code:
<legend class="text-white bg-secondary rounded">Formulaire d'enregistrement d'un individu en détention</legend>
      <input type="hidden" name="lt" value="1" />
      <input type="hidden" name="mode" value="reply" />
      <input type="hidden" name="topictype" value="0" checked="checked" />
      <input type="hidden" name="message" value="" />
      <input type="hidden" name="t" value="20218" />

Pour info, une fois passé l'alerte, on peut tout de même poster le message mais cette alerte ralenti le processus...

Merci de votre aide.
Swidix

Swidix
Nouveau membre

Messages : 13
Inscrit(e) le : 04/12/2021

Voir le profil de l'utilisateur https://lspd-online.forumactif.com
Swidix a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Problème d'envoi d'un formulaire dans un topic déjà existant

Message par Toryudo Mer 15 Déc 2021 - 21:05

Bonjour !
A priori, je viens de faire des tests, vous devez juste retirer cette ligne de code :
Code:
<input type="hidden" name="lt" value="1" />

D'après ce que j'ai pu lire par-ci par-là, c'est ce qui permet de donner l'id du dernier message posté sur ce topic... or, puisque vous répondez toujours dans le même topic, cette valeur ne sera jamais bonne. Alors on l'enlève totalement et ça va fonctionner !
Toryudo

Toryudo
****

Masculin
Messages : 443
Inscrit(e) le : 31/03/2020

Voir le profil de l'utilisateur https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Problème d'envoi d'un formulaire dans un topic déjà existant

Message par Swidix Jeu 16 Déc 2021 - 13:54

Bonjour, si je ne met pas tous les input dont a besoin forumactif pour comprendre mon POST, j'arrive sur le sujet sans qu'aucune saisie n'ai été rentrée. Je me rend compte que le problème vient du jour de publication du message, je m'explique :

Si personne n'a parlé sur le topic depuis hier, je peux envoyer mon msg sans problème MAIS si quelqu'un a posté un msg dans la journée où j'envoie mon formulaire alros il indique que quelqu'un a déjà posté entre temps...
Swidix

Swidix
Nouveau membre

Messages : 13
Inscrit(e) le : 04/12/2021

Voir le profil de l'utilisateur https://lspd-online.forumactif.com
Swidix a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Problème d'envoi d'un formulaire dans un topic déjà existant

Message par Toryudo Jeu 16 Déc 2021 - 14:47

Bonjour !
Est-ce que vous pouvez nous donner votre code complet du formulaire s'il vous plait ? Avec ma manip de retirer le name="lt", j'arrive à poster plein de messages à la suite en utilisant mon propre formulaire, il y a peut-être un autre souci quelque part !

Mon formulaire, où j'ai vraiment renseigné le minimum :
Code:
    <form action="/post" name="post" method="post" enctype="multipart/form-data">
      <input type="hidden" name="mode" value="reply" />
      <input type="hidden" name="topictype" value="0" checked="checked" />
      <input type="hidden" name="t" value="3" />
      <input type="text" name="message" value="Bonjour !" />
      <input type="submit" class="btn btn-primary" name="post" value="Soumettre" />
    </form>
Toryudo

Toryudo
****

Masculin
Messages : 443
Inscrit(e) le : 31/03/2020

Voir le profil de l'utilisateur https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Problème d'envoi d'un formulaire dans un topic déjà existant

Message par Swidix Jeu 16 Déc 2021 - 15:16

Merci pour votre réponse, c'est effectivement très étonnant. Je suis sur mon code depuis ce matin, je dois rater des choses logiques What a Face

Code:
<!DOCTYPE html>
<html lang="fr">
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/js/bootstrap.bundle.min.js" integrity="sha384-b5kHyXgcpbZJO/tY9Ul7kGkf1S0CWuKcCD38l8YkeH8z8QjE0GmW1gYU5S9FOnJ0" crossorigin="anonymous"></script>
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-BmbxuPwQa2lc/FVzBcNJ7UAyJxM6wuqIj61tLrc4wSX0szH/Ev+nYRRuWlolflfl" crossorigin="anonymous">
    <title>LSPD | Saisie</title>
    <script type="text/javascript">
      function envoiMessage(form) {

        // JS pas encore rédigé, test de récupération de la premiere valeur = ne fonctionne pas ???
        form.message.value = form.identiteSuspect.value;

      }
    </script>
  </head>
  <body>
    <!-- NAV BAR -->
      <div class="navbar navbar-expand-md navbar-dark bg-dark">
        <div class="container d-flex justify-content-between">
          <a class="navbar-brand" href="index.html">
            <img src="../img/logo.png" width="40" height="40" class="d-inline-block align-center" alt="">
            <span>Navigateur LSPD</span>
          </a>
          <button
            class="navbar-toggler"
            type="button"
            data-bs-toggle="collapse"
            data-bs-target="#toggleMobileMenu"
            aria-controls="toggleMobileMenu"
            aria-expanded="false"
            aria-lable="Toggle navigation"
          >
          <span class="navbar-toggler-icon"></span>
          </button>
            <div class="collapse navbar-collapse" id="toggleMobileMenu">

              <ul class="navbar-nav ms-auto text-center">
                <li>
                  <a class="nav-link" href="peines.html">Peines</a>
                </li>
                <li>
                  <a class="nav-link" href="https://lspd-online.forumactif.com/f11-rapports-personnels">Rapports</a>
                </li>
                <li>
                  <a class="nav-link" href="https://lspd-online.forumactif.com/f42-casiers">Casiers</a>
                </li>
                <li>
                  <a class="nav-link" href="https://lspd-online.forumactif.com/">Forum</a>
                </li>
              </ul>
            </div>
          </div>
        </div>

        <!-- Fin NAV
        Début formulaire -->

      <div class="container">
      <h1>Dépôt de saisie</h1>
      <form action="https://lspd-online.forumactif.com/post" name="post" method="post" enctype="multipart/form-data" onsubmit="envoiMessage(this)" target="_blank">

        <!-- Info POST Forumactif -->

        <input type="hidden" name="lt" value="0" />
        <input type="hidden" name="mode" value="reply" />
        <input type="hidden" name="topictype" value="0" checked="checked" />
        <input type="hidden" name="message" value="" />
        <input type="hidden" name="t" value="20218" />
        <input type="hidden" name="subject" value="" />

      <!-- Récupération infos du suspect -->

      <legend class="text-white bg-secondary rounded">Informations du suspect</legend>
      <div class="form-group">
        <label for="identiteSuspect"><strong>Identité du suspect :</strong></label>
        <input id="identiteSuspect" classe="form-control" type="text" name="identiteSuspect" value="" placeholder="Prénom Nom"></input>
      </div>
      <br />
      <div class="form-group">
        <label for="contexte"><strong>Contexte de la saisie (résumé) :</strong></label>
        <input id="contexte" name="contexte" value="" placeholder="Description brève"></input>
      </div>
        <br />
        <!-- Récupération info des stupéfiants saisies -->
        <legend class="text-white bg-secondary rounded">Stupéfiants</legend>
        <br />
        <div class="form-group">
              <label for="met"><strong>Méthamphétamine :</strong></label>
              <label for="metNon">Non</label><input id="metNon" type="radio" name="met" value="1" checked="checked"></input>
              <label for="metOui">Oui</label><input id="metOui" type="radio" name="met" value="0"></input><input id="infoMet" type="number" name="met" value="0"></input>
        </div>
        <br />
        <div class="form-group">
              <label for="coca"><strong>Cocaine :</strong></label>
              <label for="cocaNon">Non</label><input id="cocaNon" type="radio" name="coca" value="1" checked="checked"></input>
              <label for="cocaOui">Oui</label><input id="cocaOui" type="radio" name="coca" value="0"></input><input id="infoCoca" type="number" name="coca" value="0"></input>
        </div>
        <br />
        <div class="form-group">
              <label for="cana"><strong>Cannabis :</strong></label>
              <label for="canaNon">Non</label><input id="canaNon" type="radio" name="cana" value="1" checked="checked"></input>
              <label for="canaOui">Oui</label><input id="canaOui" type="radio" name="cana" value="0"></input><input id="infoCana" type="number" name="cana" value="0"></input>
        </div>
        <br />
        <div class="form-group">
              <label for="ste"><strong>Stéroide :</strong></label>
              <label for="steNon">Non</label><input id="steNon" type="radio" name="ste" value="1" checked="checked"></input>
              <label for="steOui">Oui</label><input id="steOui" type="radio" name="ste" value="0"></input><input id="infoSte" type="number" name="ste" value="0"></input>
        </div>
        <br />
        <div class="form-group">
              <label for="hero"><strong>Héroine :</strong></label>
              <label for="heroNon">Non</label><input id="heroNon" type="radio" name="hero" value="1" checked="checked"></input>
              <label for="heroOui">Oui</label><input id="heroOui" type="radio" name="hero" value="0"></input><input id="infoHero" type="number" name="hero" value="0"></input>
        </div>
        <br />

        <!-- Récupération info des armes saisies -->

        <legend class="text-white bg-secondary rounded">Armes</legend>
        <br />
          <div class="form-group">
            <label for="9mm"><strong>9mm :</strong></label>
            <label for="9mmNon">Non</label><input id="9mmNon" type="radio" name="9mm" value="1" checked="checked"></input>
            <label for="9mmOui">Oui</label><input id="9mmOui" type="radio" name="9mm" value="0"></input><input id="9mmInfo" type="number" name="9mm" value="0"></input>
          </div>
        <br />
          <div class="form-group">
            <label for="9mmsil"><strong>9mm Silencieux :</strong></label>
            <label for="9mmsilNon">Non</label><input id="9mmsilNon" type="radio" name="9mmsil" value="1" checked="checked"></input>
            <label for="9mmsilOui">Oui</label><input id="9mmsilOui" type="radio" name="9mmsil" value="0"></input><input id="9mmsilInfo" type="number" name="9mmsil" value="0"></input>
          </div>
        <br />
          <div class="form-group">
            <label for="DE"><strong>.50 Desert Eagle :</strong></label>
            <label for="DENon">Non</label><input id="DENon" type="radio" name="DE" value="1" checked="checked"></input>
            <label for="DEOui">Oui</label><input id="DEOui" type="radio" name="DE" value="0"></input><input id="DEInfo" type="number" name="DE" value="0"></input>
          </div>
        <br />
          <div class="form-group">
            <label for="pomp"><strong>Fusil à Pompe :</strong></label>
            <label for="pompNon">Non</label><input id="pompNon" type="radio" name="pomp" value="1" checked="checked"></input>
            <label for="pompOui">Oui</label><input id="pompOui" type="radio" name="pomp" value="0"></input><input id="pompInfo" type="number" name="pomp" value="0"></input>
          </div>
        <br />
          <div class="form-group">
            <label for="smg"><strong>Micro SMG/Uzi :</strong></label>
            <label for="smgNon">Non</label><input id="smgNon" type="radio" name="smg" value="1" checked="checked"></input>
            <label for="smgOui">Oui</label><input id="smgOui" type="radio" name="smg" value="0"></input><input id="smgInfo" type="number" name="smg" value="0"></input>
          </div>
        <br />
          <div class="form-group">
            <label for="mp"><strong>MP5 :</strong></label>
            <label for="mpNon">Non</label><input id="mpNon" type="radio" name="mp" value="1" checked="checked"></input>
            <label for="mpOui">Oui</label><input id="mpOui" type="radio" name="mp" value="0"></input><input id="mpInfo" type="number" name="mp" value="0"></input>
          </div>
        <br />
          <div class="form-group">
            <label for="ak"><strong>AK-47 :</strong></label>
            <label for="akNon">Non</label><input id="akNon" type="radio" name="ak" value="1" checked="checked"></input>
            <label for="akOui">Oui</label><input id="akOui" type="radio" name="ak" value="0"></input><input id="akInfo" type="number" name="ak" value="0"></input>
          </div>
        <br />
          <div class="form-group">
            <label for="m4"><strong>M4 :</strong></label>
            <label for="m4Non">Non</label><input id="m4Non" type="radio" name="m4" value="1" checked="checked"></input>
            <label for="m4Oui">Oui</label><input id="m4Oui" type="radio" name="m4" value="0"></input><input id="m4Info" type="number" name="m4" value="0"></input>
          </div>
        <br />
          <div class="form-group">
            <label for="tec"><strong>Tec-9 :</strong></label>
            <label for="tecNon">Non</label><input id="tecNon" type="radio" name="tec" value="1" checked="checked"></input>
            <label for="tecOui">Oui</label><input id="tecOui" type="radio" name="tec" value="0"></input><input id="tecInfo" type="number" name="tec" value="0"></input>
          </div>
        <br />
          <div class="form-group">
            <label for="cri"><strong>Country Rifle :</strong></label>
            <label for="criNon">Non</label><input id="criNon" type="radio" name="cri" value="1" checked="checked"></input>
            <label for="criOui">Oui</label><input id="criOui" type="radio" name="cri" value="0"></input><input id="criInfo" type="number" name="cri" value="0"></input>
          </div>
        <br />
          <div class="form-group">
            <label for="sni"><strong>Sniper Rifle :</strong></label>
            <label for="sniNon">Non</label><input id="sniNon" type="radio" name="sni" value="1" checked="checked"></input>
            <label for="sniOui">Oui</label><input id="sniOui" type="radio" name="sni" value="0"></input><input id="sniInfo" type="number" name="sni" value="0"></input>
          </div>
        <br />
          <div class="form-group">
            <label for="rpg"><strong>RPG :</strong></label>
            <label for="rpgNon">Non</label><input id="rpgNon" type="radio" name="rpg" value="1" checked="checked"></input>
            <label for="rpgOui">Oui</label><input id="rpgOui" type="radio" name="rpg" value="0"></input><input id="rpgInfo" type="number" name="rpg" value="0"></input>
          </div>
        <br />

        <!-- Autres saisies -->

        <legend class="text-white bg-secondary rounded">Autres</legend>
        <br />
        <div class="form-group">
          <label for="identiteSuspect"><strong>Autres saisies effectuées :</strong></label>
          <input id="identiteSuspect" classe="form-control" type="text" name="identiteSuspect" value="Aucune autre saisie" placeholder="Description et quantité"></input>
        </div>
        <br />

        <!-- Validation formulaire -->

        <div class="form-group">
          <input type="submit" class="btn btn-primary" name="preview" value="Prévisualiser">
          <input type="submit" class="btn btn-primary" name="post" value="Soumettre">
        </div>
      </form>
    </div>
  </body>
</html>
Swidix

Swidix
Nouveau membre

Messages : 13
Inscrit(e) le : 04/12/2021

Voir le profil de l'utilisateur https://lspd-online.forumactif.com
Swidix a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Problème d'envoi d'un formulaire dans un topic déjà existant

Message par Toryudo Jeu 16 Déc 2021 - 15:37

Je comprends le problème : dans votre script, vous avez écrit la chose suivante
Code:
      function envoiMessage(form) {
        form.message.value = form.identiteSuspect.value;
      }

Malheureusement, quand on regarde la page, il y a deux fois l'id identiteSuspect, sur deux balises différentes :
- Identité du suspect
- Autres saisies effectuées

Le fait qu'il y ait deux fois un id empêche le JavaScript de comprendre de quel id on lui parle et généralement, il ne va pas fonctionner à cause de ça. Je vous propose de changer l'id du "Autres saisies effectuées" et à partir de là, le code va fonctionner et le message ne sera plus vide. Ensuite, vous retirez le name="lt" et hop, tout va fonctionner !
J'y arrive sur mon forum avec votre formulaire en tout cas, plusieurs fois de suite !
Toryudo

Toryudo
****

Masculin
Messages : 443
Inscrit(e) le : 31/03/2020

Voir le profil de l'utilisateur https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Problème d'envoi d'un formulaire dans un topic déjà existant

Message par Swidix Sam 18 Déc 2021 - 11:46

Bonjour Toryudo, merci pour votre aide !

J'avoue débuter et avoir encore du mal avec ces règles oups.

Je vais faire des tests avec vos conseils et vous tiens informé !

Edit : Je viens d'essayer et si j'enlève le mode lt, je reçois une alerte au moment d'envoyer le message : "Mode du sujet non spécifié"
Swidix

Swidix
Nouveau membre

Messages : 13
Inscrit(e) le : 04/12/2021

Voir le profil de l'utilisateur https://lspd-online.forumactif.com
Swidix a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Problème d'envoi d'un formulaire dans un topic déjà existant

Message par Swidix Sam 18 Déc 2021 - 14:21

C'est résolu ! Le rafraichissement de ma page .html ne suffisait pas, j'ai du la fermer et ré-ouvrir le projet : ça fonctionne !

Merci de votre aide !
Swidix

Swidix
Nouveau membre

Messages : 13
Inscrit(e) le : 04/12/2021

Voir le profil de l'utilisateur https://lspd-online.forumactif.com
Swidix a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum