29. maj 2001 - 10:38Der er
3 kommentarer og 1 løsning
Løkke i en løkke
Jeg vil gerne have mit script til at gå til en bestemt side når man ikke udfylder alle feldter! Jeg har prøvet med en løkke i løkken uden held
/**************************************************************************** /scrip fra Net-Produktion A/S /Følgende funktioner kan styres /recipient = modtager /required = feldter der skal udfyldes /redirect_req = side der vises ved mangel /redirect = side der skal vises efterfølgende /Email = hvem der er afsender /subject = emne fra formular /***************************************************************************** <% Dim BestillingsMail dim strBody Set BestillingsMail = CreateObject(\"CDONTS.Newmail\") Modtager = (request(\"recipient\")) BestillingsMail.From = (request(\"Email\")) BestillingsMail.To = Modtager BestillingsMail.Subject = (request(\"subject\")) For Each ITEM In request.form strBody = strBody & \" \" & item & \" : \" & request.form(ITEM) & VbNewline & VbNewline If item = \"recipient\" Then strBody = \"\" end if If item = \"required\" Then strBody = \"\" For Each ITEM in request.form if ITEM = \"\" then response.redirect(request(\"redirect_req\")) end if next end if If item = \"redirect\" Then strBody = \"\" end if If item = \"Email\" Then strBody = \"\" end if If item = \"subject\" Then strBody = \"\" end if Next BestillingsMail.Body = strBody BestillingsMail.Send Set BestillingsMail = Nothing response.redirect(request(\"redirect\")) %>
*************************** Her er fejl beskeden!
Tekniske oplysninger (for supportteknikere)
Fejltype: Der opstod en Microsoft VBScript-kompileringsfejl (0x800A0410) Ugyldig \'for\'-løkkekontrolvariabel /formular/sid_site/SID-filer/formscrip.asp, line 26, column 14 For Each ITEM in request.form -------------^
Der er store fejl i det oprindelige script, du vil sikkert ikke få alle de felt i din mail som du ønsker, da strBody bliver nulstillet hvis felter er required mm.
Hvis du laver en redirect midt i dit script bliver scriptet ikke kørt færdigt og dermed bliver mailen ikke sendt.
Da du ved hvad felt hedder skal du ikke lave en løkke for at finde værdien. du kan bare hente den med request(\"redirect_req\")).
Jeg bemærkede det godt, jeg ønsker ikke at sende mailen hvis der mangler noget i min required
Pool
/**************************************************************************** /scrip fra Net-Produktion A/S /Følgende funktioner kan styres /recipient = modtager /required = feldter der skal udfyldes /redirect_req = side der vises ved mangel /redirect = side der skal vises efterfølgende /Email = hvem der er afsender /subject = emne fra formular /***************************************************************************** <% Dim BestillingsMail dim strBody Set BestillingsMail = CreateObject(\"CDONTS.Newmail\") Modtager = (request(\"recipient\")) BestillingsMail.From = (request(\"Email\")) BestillingsMail.To = Modtager BestillingsMail.Subject = (request(\"subject\"))
For Each ITEM In request.form if request.form(ITEM) = \"\" then response.redirect(request(\"redirect_req\")) end if strBody = strBody & \" \" & item & \" : \" & request.form(ITEM) & VbNewline & VbNewline If item = \"recipient\" Then strBody = \"\" end if If item = \"required\" Then strBody = \"\" end if If item = \"redirect\" Then strBody = \"\" end if If item = \"Email\" Then strBody = \"\" end if If item = \"subject\" Then strBody = \"\" end if Next BestillingsMail.Body = strBody BestillingsMail.Send Set BestillingsMail = Nothing response.redirect(request(\"redirect\")) %>
og som du kan se blev det ikke en løkke i løkken, men bare et tjeck i form feltet!! om der var indtastet noget!
Pool
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.