Validation form + traitement

Messages postés
43
Date d'inscription
mardi 12 mars 2013
Dernière intervention
9 mars 2019
- - Dernière réponse : jordane45
Messages postés
24992
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 mars 2019
- 9 mars 2019 à 16:05
Hello,

J'utilise un système de validation coté client : http://www.osaxis.fr/valider-ses-formulaires-avec-jquery/
Ma difficulté est que si tout est ok :


submitHandler: function(form) {
ajaxSubmit(form);
//"appel d'une fonction qui va lancer la soumission du formulaire en ajax"
}

Je voudrais pouvoir lancer le traitement php / bdd
Mais je ne sais pas comment procéder !

Merci

--
Afficher la suite 

Votre réponse

7 réponses

Messages postés
24992
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 mars 2019
364
Commenter la réponse de jordane45
Messages postés
43
Date d'inscription
mardi 12 mars 2013
Dernière intervention
9 mars 2019
0
Merci
Coucou Jordane45, merci mais je ne pense que ton script à fonctions ajax réponde à ma problématique.

Mon script PHP n'attend que l'info du "submitHandler " pour intègrer les infos ds ma BDD

--
Commenter la réponse de devdream
Messages postés
24992
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 mars 2019
364
0
Merci
La fonction AjaxSubmitForm sert à faire le submit en ajax.
/**
  • ajaxSubmit() provides a mechanism for immediately submitting
  • an HTML form using AJAX.
  • /


Dans les options de cette fonction, tu peux décider de la méthode et de l'url à utiliser...
 options = $.extend(true, {
        url:  url,
        success: $.ajaxSettings.success,
        type: method || 'GET',
        iframeSrc: /^https/i.test(window.location.href || '') ? 'javascript:false' : 'about:blank'
}, options);

Mais rien ne t'empèche de coder ta propre fonction
submitHandler: function(form) {
        //Your code for AJAX starts       

        jQuery.ajax({
                     url:'ajax.php',
                     type: "post",
                     data: $(form).serialize(),
                    success: function(){
                        //alert("success");
                        $("#result").html('Submitted successfully');
                    },
                    error:function(){
            //            alert("failure");
                        $("#result").html('There is error while submit');
                    }                
        //Your code for AJAX Ends
    });       

Et à ce moment là... d'utiliser les exemples que je t'ai donné....
Commenter la réponse de jordane45
Messages postés
43
Date d'inscription
mardi 12 mars 2013
Dernière intervention
9 mars 2019
0
Merci
Merci mais ne puis-je pas simplement confirmer la verif = ok et sur la même page entamer mon traitement des informations en pur php?

--
Le validate.js n'était en fait que pour vérifier les champs. Je voudrais simplement que l'action se poursuive si champs remplis.
jordane45
Messages postés
24992
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 mars 2019
364 > Devdream -
Je ne comprend pas l’intérêt..
Mais bon : https://www.w3schools.com/jsref/met_form_submit.asp
jordane45
Messages postés
24992
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 mars 2019
364 > jordane45
Messages postés
24992
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 mars 2019
-
enfin.. je ne suis même pas sûr que ça marche... vu que le submit va relancer à nouveau les vérifications....
Tu risques de tourner en rond....
Pourquoi ne veux tu pas utiliser, tel que c'est prévu, l'ajax ???
Merci, je vais tenter de suivre tes conseils avec ajax.php
Ne maîtrisant pas, j'ai peur de m'eterniser alors que j'ai déjà pris énormément de retard dans ce projet.
jordane45
Messages postés
24992
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 mars 2019
364 > Devdream -
Ajax.. c'est juste le fait de faire appel à un script serveur en Javascript.
Le fichier ajax.php (ou tout autre nom que tu veux lui donner ça n'a pas d'importance) n'est rien de plus qu'un fichier php comme tu l'aurais fait à ton habitude....
par contre ce script ne doit pas retourner d'affichage... il ne sert qu'à interagir avec la bdd.... en l'occurence ici.. enregistrer les données transmises par POST (ou GET si tu choisi cette méthode...à tort..) dans la BDD.
Commenter la réponse de devdream
Messages postés
43
Date d'inscription
mardi 12 mars 2013
Dernière intervention
9 mars 2019
0
Merci
Bonsoir et bon week-end à toutes et tous en ce jour de droits des femmes (ça devrait être tous les jours). Suite à mon post et au conseils de Jordane45, j'ai tenté d'utiliser le plus simplement du monde > ajax
       submitHandler: function(form) {

$.ajax({
url: 'ajax.php',
type: 'POST',
data: $("#signupForm").serialize()
});

},


Je suis supposé récupérer tous les champs de mon form préalablement vérifier, mais je n'y arrive.

Merci d'avance

--
devdream
Messages postés
43
Date d'inscription
mardi 12 mars 2013
Dernière intervention
9 mars 2019
-
En termes de traitement, mon objectif étant d'alimenter mes tables avec le contenu de ces champs
jordane45
Messages postés
24992
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 mars 2019
364 -
Dans ton appel ajax.. ajoute le success et le error afin de voir ce qui pourrait clocher...
Pense également à montrer le contenu de la console pour voir si il n'y aurait pas des erreurs qui y seraient remontés..

$.ajax({
    url: 'ajax.php', 
    type: 'POST', 
    data: $("#signupForm").serialize() ,
    success : function(response, statut){ // success est toujours en place, bien sûr !
         console.log( response); 
       },
       error : function(resultat, statut, erreur){
         console.log( 'ERREUR AJAX',resultat,erreur); 
       }
});
Commenter la réponse de devdream
Messages postés
43
Date d'inscription
mardi 12 mars 2013
Dernière intervention
9 mars 2019
0
Merci
Merci Jordane, j'ai rajouté les ligne success et error !
Je remplis mes champs et je valide , ça mouline et c'est tt
Que puis-je faire pour m'assurer que les infos arrivent ? assez simplement stp, je ne suis pas très à l'aise et accessoirement un peu chiante

--
Commenter la réponse de devdream
Messages postés
43
Date d'inscription
mardi 12 mars 2013
Dernière intervention
9 mars 2019
0
Merci
Ma page ajax :



$dsn = 'mysql:host=mysql.....perso;dbname=...........';
$user = '..........';
$password = '.........';

try {
$dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
echo 'Connexion échouée : ' . $e->getMessage();
}
$statut= htmlentities($_POST['statut']);
$pseudo = htmlentities($_POST['last_name']);
$nom_ste= htmlentities($_POST['nom_ste']);
$mail= htmlentities($_POST['email']);
$siret= htmlentities($_POST['siret']);
$phone = htmlentities($_POST['phone']);
$password= htmlentities($_POST['passw1']);
$date = date("d-m-Y"); $heure = date("H:i");
$ip = $_SERVER['REMOTE_ADDR'];


$dbh->exec("INSERT INTO TABLE (pseudo,mail,m2p,phone,statut,nom_ste,siret,ip,date,heure) VALUES('$pseudo','$mail','$password','$phone','$statut','$nom_ste','$siret','$ip','$date','$heure')");



--
devdream
Messages postés
43
Date d'inscription
mardi 12 mars 2013
Dernière intervention
9 mars 2019
-
J'abandonne, je galère depuis plusieurs jours et là je n'en peux plus.
devdream
Messages postés
43
Date d'inscription
mardi 12 mars 2013
Dernière intervention
9 mars 2019
-
Donc si qq'un a une alternative à ce plugin jquery validation.js , je suis preneuse
jordane45
Messages postés
24992
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 mars 2019
364 > devdream
Messages postés
43
Date d'inscription
mardi 12 mars 2013
Dernière intervention
9 mars 2019
-
L'alternative ? ... le coder à la main....
Mais si tu bloques sur ça.. je doute que tu y parvienne !

Je t'ai donné des instructions simples......... il suffit de les appliquer.
Je t'ai également posé des (enfin.. surtout UNE ) question(s) .... et tu n'y réponds jamais.... comment, dans ces conditions, espères tu qu'on puisse t'aider ?
devdream
Messages postés
43
Date d'inscription
mardi 12 mars 2013
Dernière intervention
9 mars 2019
-
Pas la peine de m'agresser !!! Et pas la peine d'y répondre en aboyant !
jordane45
Messages postés
24992
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 mars 2019
364 > devdream
Messages postés
43
Date d'inscription
mardi 12 mars 2013
Dernière intervention
9 mars 2019
-
T'agresser ??? En aboyant ????? Oo
Je ne sais pas ce que tu fumes... mais j'en veux bien :-)

Au lieu de geindre.... si tu avais répondu ma question ... je pense qu'on aurait pu avancer sur ton souci....

Mais bon... après tout... vu ton comportement .. je ne peux que penser que tu as raison.... enfin..sur le fait fait d'abandonner je veux dire...
Pour ma part c'est en effet ce que je vais faire. J'ai autre chose à faire que de perdre mon temps avec un rigolo. (ou une....; peu importe )

Bonne journée.
Commenter la réponse de devdream

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.