Jump to content

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


Recommended Posts

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.

Link to post
Share on other 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

Link to post
Share on other 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

Link to post
Share on other 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

Edited by P.O.K
Link to post
Share on other 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 :)

Edited by Patrick
Merci d'utiliser la balise [codebox] pour y placer ton code source quand celui-ci est long
Link to post
Share on other 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

Link to post
Share on other 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

Link to post
Share on other 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

Link to post
Share on other sites
  • 3 weeks later...

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...

Link to post
Share on other 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 ;)

Edited by P.O.K
Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...