je cherche à recuperer la variable $_POST après avoir recharger la div seul avec un fichier js
Voici le code du fichier JS

le formulaire
"``
<div class="d-flex align-items-center justify-content-center mt-5">
  <form id="formauth" method="post" action="#" lienform="pages/verif_login.php">
      <h5>Bienvenue Dans notre Site IFA</h5>
      <div class="mt-4 text-end">  
        <p class="mt-4 mb-0 text-center text-danger" id="msg"></p>
      </div>
      <div class="form-group">
        <label class="form-label">Nom d'utilisateur</label>
        <input class="form-control" id="login" type="mail" name="mail" placeholder="Adresse mail">
      </div>
      <div class="form-group">
        <label class="form-label">Mot de Passe</label>
        <input id="loginform" class="form-control" id="mdp" type="password" name="mdp" placeholder="**********">
      </div>
      <div class="form-group">
        <div class="text-end mt-3">
          <button class="btn btn-primary btn-block w-100" type="submit">Se Connecter</button>
        </div>
      </div>
      <p class="mt-4 mb-0 text-center"><a class="ms-2" id="lien" href="#" lienhref="Recuperermdp.php">Mot de passe oublier</a></p>
  </form>
</div>
<script src="pages/js/lienform.js"></script>
//fichier JS
document.forms["formauth"].addEventListener("submit",function(e){
    e.preventDefault();
    var link = $(this).attr('lienform');
    alert(link);
    link = link + "#msg";
    $("#msg").load(link);
  });
  `"

Ce que je veux

recuper $mail = $_POST['mail'];
$mdp = $_POST['mdp'];

Ce que j'obtiens

Undefined index: mail,Undefined index: mdp

12 réponses


İl te faut les récupérer à partir d'un ficher php

Si c'est le cas et que tu ne t'es pas trompé sur les valeurs des attribues name, essai de vérifier que c'est valeur existe avec un issset() avant de les stocker dans des variables

IMK
Auteur

je ne suis pas du coup trompé, j'essaie de les recupperer avec un fichier php mais le problème c'est le fichier js qui entre le fichier login et le verif_login une fois qu'il charge la div, j'appel la variable POST le navigateur me renvoie undefined(la variable POST n'existe pas)

IMK
Auteur

voici en quelque sorte le fichier que j'appel dès qu'on valide le formulaire
"``document.forms["formauth"].addEventListener("submit",function(e){
e.preventDefault();
var link = $(this).attr('lienform');
alert(link);
link = link + "#msg";
$("#msg").load(link);
});'"

Essai de commenter le preventDefault() parce qu'il empêche l'action du bouton donc l'envoi des données du formulaire à si tu veux le garder il faut faire une requête ajax

IMK
Auteur

j'ai effacé dorénavant mais rien de resultat attendu
peut-être avec ce requette ajax, mais là si possible puis-je avoir la syntaxe de cette dernière

Vu que tu utilise jquery, voici un exemple d'un formulaire soumis en ajax. Après si tu veux plus de détails et d'explications je pense que grafikart a fait une vidéo à ce sujet

$(document).ready(function () {
  $("form").submit(function (event) {
    var formData = {
      name: $("#name").val(),
      email: $("#email").val(),
      superheroAlias: $("#superheroAlias").val(),
    };

    $.ajax({
      type: "POST",
      url: "process.php",
      data: formData,
      dataType: "json",
      encode: true,
    }).done(function (data) {
      console.log(data);
    });

    event.preventDefault();
  });
});
IMK
Auteur

Ok je vois déjà.
Je veux le faire tout de suite

IMK
Auteur

Excusez-moi pour le retard, mais même en utlisant la technologie ajax cela ne marche pas.

puis je voir ton fichier php?

IMK
Auteur

Vraiment desolé pour le retard de plus

document.forms["formauth"].addEventListener("submit",function(event){
    var formData = {
      mail: $("#mail").val(),
      mdp: $("#mdp").val(),
    };
    $.ajax({
      type: "POST",
      url: "pages/verif_login.php",
      data: formData,
      success : function(data){
        $("#msg").text('Bien envoyer');
        $("#msg").show();
      },
      error : function(){
        $("#msg").text('Tous les champs sont obligatoire');
        $("#msg").show();
      }
    });
    event.preventDefault();
  });
IMK
Auteur

ce bon déjà Boss Merci beaucoup pour votre accompagnement le problème était au niveau de input de type password, il à deux identifiants