> Tous les forums > Forum des Webmasters
 Verifier une adresse email
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
goofyto8
  Posté le 16/09/2015 @ 19:09 
Aller en bas de la page 
Astucien

Bonjour,

J'ai récupéré une routine javascript qui verifie la bonne saisie d'une adresse email (la présence de @ et d'un point).

Cette fonction de verification est appelée dès que le champ de saisie d'un formulaire perd le focus (onblur) et peut informer le visiteur qu'il a mal saisi son adresse email

Je voudrai savoir comment faire et en gardant un seul champ de saisie pour que l'utilisateur y mette soit son adresse email soit son adresse postale (selon un choix par bouton radio préalable dans le formulaire) , pour que la fonction JS ne soit pas appelée si la saisie est celle d'une adresse postale .

En résumé:

si l'utilisateur coche le bouton j'indique mon adresse email -> il doit y avoir sur le champ texte une vérification de la saisie par la fonction JS

si l'utilisateur coche le bouton j'indique mon adresse postale -> il ne doit y avoir dans le champ texte aucune vérification de celle-ci (donc pas de fenêtre qui s'ouvrirait par erreur pour dire qu'il manque @)

Publicité
goofyto8
 Posté le 17/09/2015 à 12:42 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

voici le code HTML et JS

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<HEAD>
<TITLE>Choisir mode d'envoi des documents</TITLE>
<META http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<META NAME="description" CONTENT =" choix mode envoi">


<script type='text/javascript' language="javascript" >
// test bonne saisie adresse mail

function testAdresseEmail(valeur)
{
var arobace=false
var point=false
var positionArobace=-1
var positionPoint=-1


//examen caractère par caractère de la saisie avec detection @ et .
for (var i=0; i<=valeur.length;i++)
{ if (valeur.charAt(i)=="@")
{ arobace=true
positionArobace=i
}
else if(valeur.charAt(i)==".")
{point=true
positionPoint=i
}
}

// verification présence de @ et . et leur bon ordre positionnement dans la saisie

if ((arobace && point) && (positionArobace < positionPoint))
{
// adresse email conforme
alert(" adresse email correcte ")
return true
}
else
{
// adresse email non conforme

alert(" adresse email incorrectement saisie ")
return false
}
}

</script>
</HEAD>
<BODY BGCOLOR="#FDF5E6">
<h1><font size="+1" color="#0066FF">CHOIX DU MODE DE RECEPTION DES DOCUMENTS </h1>

<!-- ici le début du formulaire avec les paramétrages pour traitement PHP -->
<FORM name='choix_envoi_documentation' action='traitement.php' method='POST' >

<hr>

<p><font size="+1" color="#0066FF">J'indique mon choix de reception pour la documentation /font></p>
<p align="left">
<input type="radio" name="choix_envoi" value="par courrier postal">
<b><font color="#FF0033">PAR COURRIER POSTAL.</font></b></p>
<p align="left">
<input type="radio" name="choix_envoi" value="par mail">
<b><font color="#FF0033">PAR COURRIEL</font></b></p>
<p align="left"> <b></b><B><I><FONT COLOR="#000000" size="+1"><BR>

<BR>
<input type="text" name="emailAdresse" size="55" onblur="testAdresseEmail(this.value)">
</FONT></I></B> <BR>
<BR>
<B> </B> <!-- bouton-image pour envoi des donnees du formulaire -->
<input type="submit" name ="ok" value="soumettre" >
</p>
</FORM>

<!-- fin du formulaire -->

</BODY>
</HTML>



Modifié par goofyto8 le 17/09/2015 17:03
elle
 Posté le 17/09/2015 à 16:51 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Grande Maîtresse astucienne

Pourquoi le </script> qui traîne tout seul en haut?

Faudrait actualiser le code HTML, y a plein de balises dépréciées sinon obsolètes...

goofyto8
 Posté le 17/09/2015 à 17:07 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

bonjour,

Le </script> en haut n'existe plus.

Le code est à tester avec un navigateur et il fonctionne même s'il y quelques balises dépréciées.

Ma question n'est pas là du tout !

Je voudrais savoir comment faire pour que la routine javascript ne s'applique sur le champ de saisie que lorsque l'utilisateur valide "envoi par courriel" mais pas quand il valide "envoi par la poste" et saisit une adresse postale.



Modifié par goofyto8 le 17/09/2015 17:07
Gazby
 Posté le 17/10/2015 à 14:40 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonjour,

Je n'apporte pas la réponse à la question pour la bonne raison que javascript ne sert à rien s'il est désactivé sur le navigateur.
Il vaut mieux utiliser PHP qui s'exécute sur le serveur sinon les plus rusés passeront au travers de ce contrôle.
J' en parle en connaissance de cause. J'avais récupéré un site à maintenir avec du javascript partout, j'ai amélioré certains contrôles dans ce langage puis un jour quelqu'un m'a sytématiquement envoyé des messages vides. ça n'arrêtait pas et ça a duré plusieurs mois jusqu'à ce que je me décide à remplacer le code javascript par du PHP et le problème ne s'est plus jamais produit.

A+ Gazby.

midnightblue
 Posté le 18/10/2015 à 23:53 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

<?php

// Petite piste en PHP

//Initialisation

$vars=array("choix","saisie","ok");
foreach($vars as $vars){
if (empty($_POST[$vars])) { $_POST[$vars]="";} $$vars=$_POST[$vars];
}

//Traitement

if($choix=="mail") {

if (filter_var($saisie, FILTER_VALIDATE_EMAIL)) { echo "Adresse de courriel valide";}
else{ echo "Adresse de courriel non valide";}
}

if($choix=="codepostal"){ /* traitement du choix code postal */ }

// Formulaire

echo "<form method='post'>"
."e-mail-><input type='radio' name='choix' value='mail' checked><br>"
."code postal -><input type='radio' name='choix' value='codepostal'><br>"
."<input type='text' name='saisie' value=''><br>"
."<input type='submit' name='ok' value='OK'>"
."</form>";

?>

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
109,99 €Disque dur externe USB 3.0 Seagate 6 To à 109,99 €
Valable jusqu'au 10 Mars

Amazon propose actuellement le disque dur Seagate Expansion Desktop Drive 6 To à 109,99 € livré gratuitement alors qu'on le trouve ailleurs à partir de 135 €. Le disque est non soudé et vous pourrez le récupérer pour l'utiliser dans un ordinateur, un NAS, etc. 


> Voir l'offre
259 €PC Ankermann (Intel Pentium Dual Core, 8Go RAM, SSD 480Go, Win 10 + Office 2019) à 259 € livré
Valable jusqu'au 10 Mars

Amazon fait une promotion sur l'ordinateur de bureau Ankermann Silent PC Work à 259 € livré. Le PC est équipé d'un processeur Intel Pentium dual core à 2.7 GHz, de 8 Go de RAM, d'un SSD de 480 Go, d'un lecteur DVD, d'un lecteur de carte mémoires et tourne sous Windows 10 Pro 64 bits. Microsoft Office 2019 Pro en français est également fourni.

Ajoutez un écran (comme cet écran 24 pouces ViewSonic VA2418 (FullHD, IPS, 75 Hz) à 99,99 €) et un pack clavier souris (comme ce pack filaire Logitech MK120 à 17,99 €) et vous avez un PC complet à l'aise en bureautique et Internet. Garantie 2 ans.


> Voir l'offre
14,88 €Coffret d'embouts de vissage et à cliquet Bosch 26 pièces à 14,88 €
Valable jusqu'au 08 Mars

Amazon fait une promotion sur le coffre de 32 pièces d'embouts de vissage qui passe à 13,50 € au lieu de 16 €. Il comporte un porte embout universel à changement rapide et des embouts PH1/PH2/PH2/PH3/PZ1/PZ2/PZ2/PZ3/HEX 3/HEX 4/HEX 5/HEX 6/T10/T15/T20/T20/T25/T27/T30/T40.


> Voir l'offre

Sujets relatifs
Encoder adresse email
Créer une adresse Email [ résolu]
Cacher adresse Email par encodage ?[résolu]
comment maitre un adresse email sur son site
Cacher son adresse émail
adresse Email dans un formulaire
changer mon adresse mail
adresse clicable
Adresse en .tk
redirection d'adresse
Plus de sujets relatifs à Verifier une adresse email
 > Tous les forums > Forum Forum des Webmasters