Demande de vérification de code

Résolu
norman bates Messages postés 69 Date d'inscription jeudi 11 novembre 2004 Statut Membre Dernière intervention 22 mars 2008 - 26 déc. 2004 à 16:34
norman bates Messages postés 69 Date d'inscription jeudi 11 novembre 2004 Statut Membre Dernière intervention 22 mars 2008 - 28 déc. 2004 à 22:17
Salut tout le monde je viens juste de faire un script en ASP qui vérifie si les champs contiennent des données ou pas et une fois que tout les champs remplis valide le formulaire et apelle la page de remerciement
Je souhaite savoir si je me suis bien débrouillé car j'ai très peu de connaissances en ASP
Bon le code n'est pas fini il me manque pour le transfert sur le mail et la suite on verra

Je vous remercie d'avance de vos aides et si il y a des doutes demandez moi

Merci d'avance et joyeux noel

code
<% ' Date de création: 26/12/2004 %>
<html>

<%'declaration de variables
Firstname=Empty
Lastname=Empty
Position=Empty
Company=Empty
Adress=Empty
phonenumber=Empty
Businesstype=Empty
Turnover=Empty
Howwecanhelpyou=Empty

'condition de vérification de données
if Request.Form("Firstname") = "" Then
Response.Write("Le champ est vide !") else
'tout est ok
Response.redirect("thankyou.asp")


if Request.form("Lastname")="" then response.write("Le champ est vide !") else
'tout est ok
Response.redirect("thankyou.asp")


if Request.form("Position")="" then response.write("Le champ est vide !") else
'tout est ok
Response.redirect("thankyou.asp")


if Request.form("Company")="" then response.write("Le champ est vide !")else
'tout est ok
Response.redirect("thankyou.asp")


if Request.form("Adress")="" then response.write("Le champ est vide !") else
'tout est ok
Response.redirect("thankyou.asp")


if request.form("phonenumber")="" then response.write("Le champ est vide") else
'tout est ok
Response.redirect("thankyou.asp")


if request.form("Businesstype")="" then response.write("Le champ est vide")else
'tout est ok
Response.redirect("thankyou.asp")


if request.form("Turnover")="" then response.write("Le champ est vide !") else
'tout est ok
Response.redirect("thankyou.asp")


if request.form("Howwecanhelpyou")="" then response.write("Le champ est vide !") else
'tout est ok
Response.redirect("thankyou.asp")
endif
endif
endif
endif
endif
endif
endif
endif
endif

%>

</html>

c++ à la folie :) :p

4 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
26 déc. 2004 à 17:58
ca me semble un peu lourd tout ca

tu peux aussi faire comme ca : if Request.Form("Firstname") "" and Request.Form("Lastname") "" then blablabla

en vb.net on peut meme utiliser andalso, ce qui evite de les vérifier tous, des qu'il y en a un, le test s'arrete ....

mais c'est toujours pas une solution splendide :(

une autre serait de faire une fonction

dim champs() as string = {"FirstName", "LastName", ...}
for each champ as string in champs
isValid(champ)
next

private function isValid(champ as string) as boolean
return request.form(champ) <> ""
response.write("le champ " & champ & " est vide")
end function

Je pense malheureusement pas que cette derniere solution fonctionne avec asp3 mais elle fonctionnera avec asp.net.
Donc si tu débutes, pourquoi ne pas commencer par asp.net, asp est desormais dépassé, et avec asp.net il existe une autre facon de faire pour cela, qui necessite aucune ligne dans le code, grace aux controles requiredFieldValidatorExpression

pour débuter avec asp.net va sur asp-php.net il y a des tutos la bas, sinon un bouquin excellent de R.Clark : introduction a asp.net des editions Ms Press je le conseille a tout les debutants, pas cher, et vraiment tres bien fait.

et puis au vue de ta signature, si tu connais déja C++ tu pourras rapidement faire de l'asp.net avec C#

Cyril
3
norman bates Messages postés 69 Date d'inscription jeudi 11 novembre 2004 Statut Membre Dernière intervention 22 mars 2008
26 déc. 2004 à 18:35
ben en fait je fais ca pour mon site c'est à titre exceptionel que je fais de l'asp c'est pour ca c'est pour un formulaire qui est déja prêt en html
c++ à la folie :) :p
0
norman bates Messages postés 69 Date d'inscription jeudi 11 novembre 2004 Statut Membre Dernière intervention 22 mars 2008
27 déc. 2004 à 11:29
voila le code finale avec la vérif si les champs sont remplis vérif si le mail est valable ainsi que le transfer via serveur du formulaire
ne pas tenir compte des balises html

<% ' Date de création: 26/12/2004 %>
<html>

<%'declaration de variables
Firstname=Empty
Lastname=Empty
Position=Empty
Company=Empty
Adress=Empty
phonenumber=Empty
Businesstype=Empty
Turnover=Empty
Howwecanhelpyou=Empty

'condition de vérification de données
if Request.Form("Firstname") = "" or
Request.form("Lastname")="" or Request.form("Position")="" or
Request.form("Company")="" or
Request.form("Adress")="" or
request.form("phonenumber")="" or
request.form("Businesstype")="" or
request.form("Turnover")="" or
request.form("Howwecanhelpyou")="" Then
Response.Write("Le champ est vide !") else
'tout est ok
Response.redirect("thankyou.asp")

'vérification validité email

unction ValidEmail(sEMail)

Dim sInvalidChars
Dim bTemp
Dim i
Dim sTemp

' Caratères interdits
sInvalidChars = Chr(33) & Chr(34) & Chr(35) & Chr(36) & Chr(37) & Chr(38) & Chr(39) & Chr(40) & Chr(41) & Chr(42) & Chr(43) & Chr(44) & Chr(47) & Chr(58) & Chr(59) & Chr(60) & Chr(61) & Chr(62) & Chr(63) & Chr(91) & Chr(92) & Chr(93) & Chr(94) & Chr(96) & Chr(123) & Chr(124) & Chr(125) & Chr(126) & Chr(127)
sInvalidChars = sInvalidChars & Chr(128) & Chr(129) & Chr(130) & Chr(131) & Chr(132) & Chr(133) & Chr(134) & Chr(135) & Chr(136) & Chr(137) & Chr(138) & Chr(139) & Chr(140) & Chr(141) & Chr(142) & Chr(143) & Chr(144) & Chr(145) & Chr(146) & Chr(147) & Chr(148) & Chr(149) & Chr(150) & Chr(151) & Chr(152) & Chr(153) & Chr(154) & Chr(155)
sInvalidChars = sInvalidChars & Chr(156) & Chr(157) & Chr(158) & Chr(159) & Chr(160) & Chr(161) & Chr(162) & Chr(163) & Chr(164) & Chr(165) & Chr(166) & Chr(167) & Chr(168) & Chr(169) & Chr(170) & Chr(171) & Chr(172) & Chr(173) & Chr(174) & Chr(175) & Chr(176) & Chr(177) & Chr(178) & Chr(179) & Chr(180) & Chr(181) & Chr(182) & Chr(183)
sInvalidChars = sInvalidChars & Chr(184) & Chr(185) & Chr(186) & Chr(187) & Chr(188) & Chr(189) & Chr(190) & Chr(191) & Chr(192) & Chr(193) & Chr(194) & Chr(195) & Chr(196) & Chr(197) & Chr(198) & Chr(199) & Chr(200) & Chr(201) & Chr(202) & Chr(203) & Chr(204) & Chr(205) & Chr(206) & Chr(207) & Chr(208) & Chr(209) & Chr(210) & Chr(211)
sInvalidChars = sInvalidChars & Chr(212) & Chr(213) & Chr(214) & Chr(215) & Chr(216) & Chr(217) & Chr(218) & Chr(219) & Chr(220) & Chr(221) & Chr(222) & Chr(223) & Chr(224) & Chr(225) & Chr(226) & Chr(227) & Chr(228) & Chr(229) & Chr(230) & Chr(231) & Chr(232) & Chr(233) & Chr(234) & Chr(235) & Chr(236) & Chr(237) & Chr(238) & Chr(239)
sInvalidChars = sInvalidChars & Chr(240) & Chr(241) & Chr(242) & Chr(243) & Chr(244) & Chr(245) & Chr(246) & Chr(247) & Chr(248) & Chr(249) & Chr(250) & Chr(251) & Chr(252) & Chr(253) & Chr(254) & Chr(255)

'Rechercher qu'il y a au moins un '@'
bTemp = InStr(sEMail, "@") <= 0

'Rechercher qu'il y a au moins un '.'
bTemp = bTemp Or InStr(sEMail, ".") <= 0

'Vérifions que la taille est plus grande que 6 caractères (a@a.ca)
bTemp = bTemp Or Len(sEMail) < 6

'Vérifier qu'il y a qu'n seul '@'
i = InStr(sEMail, "@")

sTemp = Mid(sEMail, i + 1)

bTemp = bTemp Or InStr(sTemp, "@") > 0

'Vérifier qu'il y un '.' après le '@' bTemp bTemp Or InStr(sTemp, ".") 0

'Vérifier la présence de (")
bTemp = bTemp Or InStr(sEMail, Chr(34)) > 0

'Vérifier la présence de (.@)
bTemp = bTemp Or InStr(sEMail, ".@") > 0

'Vérifier la présence de (@.)
bTemp = bTemp Or InStr(sEMail, "@.") > 0

'Vérifier la présence de (..)
bTemp = bTemp Or InStr(sEMail, "..") > 0

'Vérifié s'il y a des caractères interdits
For i = 1 To Len(sEMail)
If InStr(sInvalidChars, Mid(sEMail, i, 1)) > 0 Then
bTemp = True
End If
Next

' S'il y a une seule des conditions ci-dessus qui repond true alors l'e-mail est invalide
ValidEmail = Not bTemp

End Function

If ValidEmail("Votre email")= True Then

Response.Write "Le mail est valide"

Else

Response.Write "Le mail est invalide"

End If


endif

'envoie email
Dim objCDOMail
Set objCDOMail = Server.CreateObject("CDONTS.NewMail")
objCDOMail.From = Request.Form("_email")
objCDOMail.To="contact@cortexinformaticltd.biz"
objCDOMail.Subject=Request.Form("FORMULAIRE DE CONTACT")
objCDOMail.Body=Request.Form("_body")
objCDOMail.Send
Set objCDOMail=Nothing

%>

</html>

merci d'avance ;)
c++ à la folie :) :p
0
norman bates Messages postés 69 Date d'inscription jeudi 11 novembre 2004 Statut Membre Dernière intervention 22 mars 2008
28 déc. 2004 à 22:17
sujet clos j'ai résolu le problème et tout marche maintenant :)
c++ à la folie :) :p
0
Rejoignez-nous