Verifier le champ d'un formulaire ds bdd sans envoi

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Verifier le champ d'un formulaire ds bdd sans envoi

par pierre_jean » 11 juil. 2005, 00:25

ouckileou, en suivant ton conseil :

ma page avec mon formulaire j'ai un champs a verifier (tester présence dans bdd par exemple) :

Code : Tout sélectionner

[...] <input id="champ_a_verifier" name="champ_a_verifier" type="text"> <input id="verifier" value="VERIFIER" onclick="verif('champ_a_verifier');" /> [...]

la fonction verif :

Code : Tout sélectionner

function verif(id_du_txt_a_verif) { var txt_a_verif = document.getElementById(id_du_txt_a_verif); var url; url = 'page_verification.php?recup='+txt_a_verif.value; window.open(url,"verification du champ", "height=400,width=200,top=200,left=200"); }

la page de vérification :

Code : Tout sélectionner

<?php echo 'le champ que je recupere : '; echo $recup; ?> <center><form><input type="button" value="Fermer cette fenêtre" onClick="window.close()"></form></center> [..] Traitement avec le champ recupérer [...]

merci pour tout

Cdlt,

Pierre J.

par ouckileou » 10 juil. 2005, 23:49

passe par une fonction

Code : Tout sélectionner

function bidon() { // tu récupère la valeur dans une variable (ou passée en paramètre) // tu crées une url avec cette valeur // tu ouvres ton popup avec l'url }
ce sera plus facilement manipulable ;)

par pierre_jean » 10 juil. 2005, 23:40

j arrive pas a combiner le open.windows pour passer le parametre de mon champ_a_verifier (zone de texte de mon formulaire) a ma page .php

j'arrive pas a exploiter "document.formulaire.mon_champ_a_verifier.value"

comment faire ?

par ouckileou » 10 juil. 2005, 23:05

avec du Javascript

window.open()

la syntaxe est expliquée ici : http://www.commentcamarche.net/javascript/jswindow.php3

par pierre_jean » 10 juil. 2005, 22:57

arf !
ouckileou a raison ;)

comment faire sans valider le formulaire ? :roll:

par ouckileou » 10 juil. 2005, 22:55

en ouvrant un popup, avec la page de vérification, en passant en paramètre de l'url le contenu à vérifier

au moins le formulaire n'est pas envoyé

par Cyrano » 10 juil. 2005, 22:52

C'est pas possible de faire autrement, ou alors peut-être avec du JavaScript et XMLHTTPRequest, mais là, je sais pas comment ça fonctionne.

par ouckileou » 10 juil. 2005, 22:43

ben ça c'est en soumettant le formulaire, et il ne veut pas :)

par Cyrano » 10 juil. 2005, 22:41

Ce qu'il faut faire, c'est en début de fichier commencer par vérifier si le formulaire a été envoyé. Si oui, dans un premier temps tu vérifie ton champ dans la base de données : selon le résultat obtenu, soit tu ré-affiches le formulaire avec les informations saisies et un message, soit c'est ok et tu valides : le tout en une seule opération. Est-ce que cette explication n'est pas trop confuse ?

par pierre_jean » 10 juil. 2005, 22:30

je te remercie mais c'est justement ce que j'arrive a faire et que je ne veux pas faire ;)

je voudrais envoyer le resultat de mon champ a verifier sur une autre page .php en "popup" (_blank) qui vérifira mon champ. Je ne veux pas valider mon formulaire.

par ouckileou » 10 juil. 2005, 21:55

pour vérifier une info dans la base de données il va forcément falloir que tu exécutes un script PHP, tu ne pourras pas le faire en Javascript

en fait, ton bouton "vérifier", va lui aussi soumettre le formulaire, sauf que tu peux dans la page de réception, détecter que c'est ce bouton qui a été cliqué (et non pas l'autre "Envoyer") et donc faire ta vérification.

Ensuite, tu peux rederiier sur ton formulaire, avec les infos qui étaient saisies et le résultat de ta vérification

Verifier le champ d'un formulaire ds bdd sans envoi

par pierre_jean » 10 juil. 2005, 21:40

Bonsoir,

J'ai un formulaire a remplir avec dedans entre autre une zone de texte a remplir avec un lien ou bouton a coté qui demande de vérifier si ce produit a déjà été saisit dans la bdd.

:?: Comment faire ? j'arrive a le faire dans le même formulaire (je valide le formulaire il me fait une verification apres l'envoi). Mais ce que je voudrais faire c'est vérifier la présence ou non de ce champ dans ma bdd avant d'envoyer mon formulaire et non pas à la validation du formulaire.


merci d'avance

Cdlt,

Pierre J.