Aller au contenu

Contrôle de la validité d'un mail dans formulaire


P.O.K

Sujets conseillés

Bonjour à tous,

j'ai créé un formulaire avec des champs comme nom, prénom, adresse, e-mail, etc...

Une fois que ce formulaire est envoyé, la personne qui l'a rempli reçoit automatiquement un mail de confirmation. L'adresse sur laquelle sera envoyé ce message est celle qu'il a noté dans le champ "E-mail".

Mon problème est que si l'adresse n'est pas valide (elle ne ressemble pas à aaa_AT_bbb.com), le script ne marche pas.

Je voudrai que lorsque la personne valide le formulaire, si elle n'a pas mis une adresse valide, cela lui soit indiqué et le formulaire non validé.

J'ai trouvé plusieurs script en Javascript sur internet mais ne connaissant pas du tout ce langage je n'ai jamais réussi à les faire fonctionner...

Quelqu'un pourrait m'aider ???

Merci beaucoup

P.S. J'ai créé mon site en ASP.

Lien vers le commentaire
Partager sur d’autres sites

Zut !

Je te donnais une solution en php et je viens de lire ton post scriptum.

Autant pour moi, j'efface donc ma solution. Je n'ai jamais codé en ASP, je ne peux donc pas t'aider.

++

Patrick

Lien vers le commentaire
Partager sur d’autres sites

Essais ça :

Function VerifEmail(email)
dim regEx
Set regEx = New RegExp
regEx.Global = True
regEx.Pattern = "^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]{2,}[.][a-zA-Z]{2,3}"
notag = regEx.test(email)
end function

Lien vers le commentaire
Partager sur d’autres sites

Merci beaucoup pour cette réponse. Mais malheureusement je ne sais pas comment intégré ce code dans ma page... Je dois ajouter quelque chose à mon formulaire pour que ca fonctionne ?

(Je suis vraiment débutant :-))

Merci

Modifié par P.O.K
Lien vers le commentaire
Partager sur d’autres sites

Pour que vous puissiez mieux comprendre mon problème, voici le code de ma page.

J'aimerai que si l'adresse mail est valide, l'envoi se fasse. Si elle n'est pas valide, il faudrait qu'un message apparaisse du genre "Votre adresse mail n'est pas valide".

<% 
TestOK = false
if request.form("nom")<>"" and request.form("prenom")<>"" and request.form("email")<>"" then
if request.form("adresse")<>"" and request.form("telephone")<>"" then

TestOK = true
set Mail = server.CreateObject("Persits.MailSender")
Mail.host = "mail.???.com"

Mail.From = "intranet_AT_??.com"
Mail.addaddress "???@???.com"
Mail.Subject = "Changement d'adresse"
msg = "Login : " & session("login") & chr(10)
msg = msg & "Nom : " & request.form("prenom") & " " & request.form("nom") & chr(10)
msg = msg & "E-mail : " & request.form("email") & chr(10)
msg = msg & "Filière d'étude : " & request.form("filiere") & chr(10)
msg = msg & "Adresse : " & chr(10) & request.form("adresse") & chr(10)
msg = msg & "Téléphone : " & request.form("telephone") & chr(10)
msg = msg & "Civilité : " & request.form("civilite") & chr(10)
Mail.Body = msg
Mail.send

'MailEtudiant = request.form("email")

'set MailEtu = server.CreateObject("Persits.MailSender")
'MailEtu.host = "mail.hevs.ch"

'MailEtu.From = "mlaure.siffert_AT_hevs.ch"
'MailEtu.addaddress MailEtudiant
'MailEtu.Subject = "Changement d'adresse"
'MsgEtu = "Nous vous remercions de votre demande. Celle-ci sera traitée dans les meilleurs délais." & chr(10) & chr(10)
'MsgEtu = MsgEtu & "Meilleures salutations." & chr(10)
'MsgEtu = MsgEtu & "L'Administration" & chr(10)
'MailEtu.Body = MsgEtu
'MailEtu.send

%><b>Message envoyé</b><%
else
%> <font color="#ff0000">Tous les champs ne sont pas remplis...</font> <br> <a class="LinkHref" href="java script:history.back();">retour</a> <%
end if
end if
%>
<%if TestOK = false then%>

<form action="#" method="post" name="FormChangAdd">
<table cellspacing="1" align="center">
<tr>
<td>Login</td>
<td>:</td>
<td><%= session("login") %><input type="hidden" name="login" value="<%= session("login") %>"></td>
</tr>
<tr>
<td>Prénom</td>
<td>:</td>
<td><input type="text" name="prenom"></td>
</tr>
<tr>
<td>Nom</td>
<td>:</td>
<td><input type="text" name="nom"></td>
</tr>
<tr>
<td>E-Mail</td>
<td>:</td>
<td><input type="text" name="email">
</td>
</tr>
<tr>
<td>Filière d'étude</td>
<td>:</td>
<td><input type="text" name="filiere"></td>
</tr>
<tr>
<td>Adresse</td>
<td>:</td>
<td><textarea name="adresse" rows=3 cols=35 ></textarea></td>
</tr>
<tr>
<td>Téléphone</td>
<td>:</td>
<td><input type="text" name="telephone"></td>
</tr>
<tr>
<td>Civilité</td>
<td>:</td>
<td><input type="text" name="civilite"></td>
</tr>
<tr>
<td colspan="3" align="center"><input type="submit" Value="Ok"><input type="reset" value="Reset"></td>
</tr>
</table>
</form>

<%end if%>

Merci :)

Modifié par Patrick
Merci d'utiliser la balise [codebox] pour y placer ton code source quand celui-ci est long
Lien vers le commentaire
Partager sur d’autres sites

C'est une fonction qui renvoie vrai ou faux en fonction du paramètre que tu lui envois

exemple :

Dim ch
ch = "toto@hotmail.com"

if VerifEmail(ch) = false then
response.write "L'email " & ch & " est valide"
else
response.write "L'email " & ch & " n'est pas valide"
end if

Lien vers le commentaire
Partager sur d’autres sites

Merci pour votre réponse.

Malheureusement je n'arrive toujours pas à faire fonctionner ce code. Voici ma page :

<%
Function VerifEmail(email)
dim regEx
Set regEx = New RegExp
regEx.Global = True
regEx.Pattern = "^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]{2,}[.][a-zA-Z]{2,3}"
notag = regEx.test(email)
end function
%>

<%
TestOK = false

ch = request.form("email")

if VerifEmail(ch) = false then
if request.form("nom")<>"" and request.form("prenom")<>"" and request.form("email")<>"" then
if request.form("adresse")<>"" and request.form("telephone")<>"" then

TestOK = true
set Mail = server.CreateObject("Persits.MailSender")
Mail.host = "???.mail.com"

Mail.From = "intranet_AT_??.com"
Mail.addaddress "???@???.com"
Mail.Subject = "Changement d'adresse"
msg = "Login : " & session("login") & chr(10)
msg = msg & "Nom : " & request.form("prenom") & " " & request.form("nom") & chr(10)
msg = msg & "E-mail : " & request.form("email") & chr(10)
msg = msg & "Filière d'étude : " & request.form("filiere") & chr(10)
msg = msg & "Adresse : " & chr(10) & request.form("adresse") & chr(10)
msg = msg & "Téléphone : " & request.form("telephone") & chr(10)
msg = msg & "Civilité : " & request.form("civilite") & chr(10)
Mail.Body = msg
Mail.send %><b>Message envoyé</b><%
else
%> <font color="#ff0000">Tous les champs ne sont pas remplis...</font> <br> <a class="LinkHref" href="java script:history.back();">retour</a> <%
end if
end if
else%>
L'email " & <%=ch%> & " n'est pas valide
<%end if%>
<%if TestOK = false then%>

<form action="#" method="post" name="FormChangAdd">
<table cellspacing="1" align="center">
<tr>
<td>Login</td>
<td>:</td>
<td><%= session("login") %><input type="hidden" name="login" value="<%= session("login") %>"></td>
</tr>
<tr>
<td>Prénom</td>
<td>:</td>
<td><input type="text" name="prenom"></td>
</tr>
<tr>
<td>Nom</td>
<td>:</td>
<td><input type="text" name="nom"></td>
</tr>
<tr>
<td>E-Mail</td>
<td>:</td>
<td><input type="text" name="email" id="email">
</td>
</tr>
<tr>
<td>Filière d'étude</td>
<td>:</td>
<td><input type="text" name="filiere"></td>
</tr>
<tr>
<td>Adresse</td>
<td>:</td>
<td><textarea name="adresse" rows=3 cols=35 ></textarea></td>
</tr>
<tr>
<td>Téléphone</td>
<td>:</td>
<td><input type="text" name="telephone"></td>
</tr>
<tr>
<td>Civilité</td>
<td>:</td>
<td><input type="text" name="civilite"></td>
</tr>
<tr>
<td colspan="3" align="center"><input type="submit" Value="Ok" ONCLICK="emailCheck();"><input type="reset" value="Reset"></td>
</tr>
</table>
</form>

<%end if%>

Avez-vous une idée ce du problème ? lorsque je valide mon formulaire il me remarque toujours pas quand l'adresse mail n'est pas valide...

Merci

Lien vers le commentaire
Partager sur d’autres sites

C'est quoi ton test la :

ch = request.form("email")

if VerifEmail(ch) = false then
if request.form("nom")<>"" and request.form("prenom")<>"" and request.form("email")<>"" then
if request.form("adresse")<>"" and request.form("telephone")<>"" then


<%end if%>

refais le comme ça :

email = request.form("email")
nom = request.form("nom")
prenom = request.form("prenom")
adresse = request.form("adresse")
telephone = request.form("telephone")

if VerifEmail(email) = true and nom<>"" and prenom<>"" and adresse<>"" and telephone<>"" then

Lien vers le commentaire
Partager sur d’autres sites

  • 3 semaines plus tard...

Bonjour,

désolé de répondre aussi tard, j'étais en vacances jusqu'à aujourd'hui.

Je ne peux pas mettre un seul "if" car sinon le code suivant apparait automatiquement :

%> <font color="#ff0000">Tous les champs ne sont pas remplis...</font> 
 <a class="LinkHref" href="java script:history.back();">retour</a> <%

J'ai tout de même essayé de faire comme vous me l'aviez indiqué mais cela ne marche toujours pas. La fonction "VerifEmail(ch)" ne fonctionne pas...

Lien vers le commentaire
Partager sur d’autres sites

Laissez tomber. J'ai finalement décidé d'ajouter un :

if instr(AdresseMail,"@") then

pour qu'il me retourne un message d'errur en cas de "@" manquant.

Merci quand même d'avoir pris la peine de m'aider ;)

Modifié par P.O.K
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...