Form récupère info avant de faire submit

SpaceHam Messages postés 78 Date d'inscription lundi 27 mars 2006 Statut Membre Dernière intervention 22 octobre 2015 - 21 juin 2013 à 14:33
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 - 25 juin 2013 à 19:43
Bonjour,

j'essai d'envoyer un formulaire avec la method 'POST' vers une autre page pour validation. En fait cette autre page est login screen donc si les infos envoyés ne sont pas bon il y a un message d'erreur qui apparait dans cette page sinon il s'ouvre comme il se doit pour que l'utilisateur puisse faire ce qu'il doit faire.

Ma question est, est-il possible d'obtenir le résultat de l'erreur avant que (en faissant form.submit) d'envoyer le tout? Y a-t-il une facon de faire un check avec le form.submit si l'erreur est apparue?

Au besoin demandé moi j'essaie d'être un peu plus descriptif.

Merci

SpaceHamAgent

10 réponses

Bonsoir,

je pense que cela pourrais t'aider? :

function Suivant() {
if (document.frmname.idbox.value != "login") {
return true;
}
else {
alert("Saisissez le login");
return false;
}
}

Speed29
0
ou

function post() {
if (document.frmname.logbox.value != "loginuser") {
return true;
}
else {
alert("Saisissez le login");
return false;
}
}

pardon
0
SpaceHam Messages postés 78 Date d'inscription lundi 27 mars 2006 Statut Membre Dernière intervention 22 octobre 2015
22 juin 2013 à 05:26
Juste pour être sur.

Ceci est ma function javascript qui appelle la page pour faire le check en POST. Comme j'essaie de dire il faudrait, avant de loader cette page, que je puisse vérifier si le username et password sont bon. A cet effet je voudrais pouvoir appeler en javascript un fichier PHP qui va me renvoyer un echo soit du genre 'error' ou 'ok'(si les infos sont ok)

Si je recois un ok alors je vais pouvoir ouvrir le url en question pour y entrer les informations du client.

--------------------------------------
function user_login(){
var user = document.getElementById('user');
var pass = document.getElementById('password');

var url = "update/up_login.php?username=" + user.value + "&password=" + pass.value; //url du fichier php pour en faire le check si 'ok' ou 'error'

//ICI serais le fait de vérifier si 'url' est ok ou en erreur. Si il est ok
//alors j'appelle ma function loginDirectAdmin sinon je ne fais que capter mon echo
//et j'appelle ma function qui affiche le message directement sur la page
//exemple: function err_login(msg)

loginDirectAdmin(user.value, pass.value);//Cette section appelle l'url a ouvrir)
}
-----------------------------------

Y aurait-il une facon tout simplement pour en capté le echo de mon fichier PHP que j'appellerai afin de savoir si je dois déduire a une erreur ou a un OK avant de continuer??

Merci de me revenir sur ce cas!

SpaceHamAgent
0
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
22 juin 2013 à 23:07
Bonjour,

ce que tu demande est facilement faisable via xmlhttprequest (communément appelé AJAX). Le principe est d'envoyer des valeurs via $_GET / $_POST et de récupérer le contenu. C'est assez simple surtout avec la librairie jquery.

Par exemple:
$.get("test.php", function(data) {
  alert("Data Loaded: " + data);
});


ou encore:
$.post('ajax/test.html', function(data) {
  $('.result').html(data);
});


Je te conseille de faire des tests et d'exploiter ce mécanisme pour qu'il s'adapte a ta demande. Pour plus d'infos consulte la documentation de jquery (qui remarquablement bien faite, avec de nombreux exemples...)

http://api.jquery.com/jQuery.get/
http://api.jquery.com/jQuery.post/


--------------------------
Mon blog technique: [www.codeyourweb.org www.codeyourweb.org]
HTML5 / CSS3 / JS - Intégration des technologies du web a destination des nouvelles plateformes et nouveaux usages d'internet
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Merci,
Cette reponse mais aussi utiles.
0
SpaceHam Messages postés 78 Date d'inscription lundi 27 mars 2006 Statut Membre Dernière intervention 22 octobre 2015
23 juin 2013 à 19:48
Merci shadow1779...

J'ai regarder pour le post. Si je peux bien saisir, pour mon cas, c'est que je pourrais en javascript envoyé le tout a une page API directement via le POST.

d'apres ce que je voyais je pourrais faire de quoi du genre.

...
var user = "monuser";
var pass = "monpassword";

var url = "le site web qui veut le post";

$.post(url, { username: user, password: pass })
.done(function(data) {
alert("Data Loaded: " + data);
})


J'ai essayer ca puisque j'envoie le tout sur une page web API mais il ne semble pas vouloir me sortir l'alert.

Je continue des tests mais si quelqu'un a une idée je suis prêt :)

SpaceHamAgent
0
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
24 juin 2013 à 08:53
Re,

Etrange que cela ne fonctionne pas, je viens de refaire le test avec un exemple bateau et sa fonctionne. Vérifie ton code et regarde s'il ne relève pas une erreur de syntaxe, sinon base toi sur ce petit exemple: http://sdrv.ms/12YQile

Tiens moi au courant si sa fonctionne.



----------------------
Mon blog technique: [www.codeyourweb.org www.codeyourweb.org]
HTML5 / CSS3 / JS - Intégration des technologies du web a destination des nouvelles plateformes et nouveaux usages d'internet
0
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
24 juin 2013 à 17:51
Le code proposé par shadow1779 est du javascript utilisant le framework jquery. Du moins la syntaxe y ressemble fortement. Si jQuery ou le framework approprié n'est pas installé par SpaceHam, le code ne marchera pas.
Sinon il faut vérifier avec la console javascript qu'aucune erreur ne s'est produite.
0
shadow1779 Messages postés 706 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 29 septembre 2013
24 juin 2013 à 22:33
Re,

Effectivement je ne l'avais pas mentionné car ca me paraissait logique étant donné que je citais la documentation de jQuery pour l'utilisation d'xhr mais il faut bien penser a télécharger la lib et y faire référence comme je le fais dans mon exemple avec le:

<script type="text/javascript" href="jquery.min.js"></script>


ou via une version hébergé comme:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>



Mon blog technique: [www.codeyourweb.org www.codeyourweb.org]
HTML5 / CSS3 / JS - Intégration des technologies du web a destination des nouvelles plateformes et nouveaux usages d'internet
0
cs_AlexN Messages postés 694 Date d'inscription lundi 5 décembre 2005 Statut Membre Dernière intervention 8 janvier 2014 19
25 juin 2013 à 19:43
Tout va bien, vous marchez droit, c'est moi qui ait posté de travers.
Pour revenir au problème de SpaceHam, vous ne donnez pas suffisamment d'informations pour que l'on comprenne où est votre problème.
1) Ne publiez pas seulement une partie du code sauf si vous êtes certain que le problème ne peut venir que de cette section.
Par exemple que fait la fonction loginDirectAdmin ? Elle ne semble pas fonctionner correctement.
2) Utiliser les balises de colorisation du langage approprié (HTML, javascript, etc) pour rendre votre texte lisible.
<script type="text/javascript" href="jquery.min.js"></script>

3) Il faudrait savoir si des erreurs javascript ont eut lieu et quels sont leur message d'erreur. Utiliser la console javascript de votre navigateur de test
0
Rejoignez-nous