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
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
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)
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
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();
});
});
Excusez-moi pour le retard, mais même en utlisant la technologie ajax cela ne marche pas.
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();
});
ce bon déjà Boss Merci beaucoup pour votre accompagnement le problème était au niveau de input de type password, il à deux identifiants