Hej,
Tidigare har jag haft ett webbformulär på webbsidan som fungerade bra. Men sen uppdaterades allt av mitt webbhotel. Så nu står jag där utan
formulär som man kan kontakta mig med. Efter att ha tittat på olika formulär så tänkte jag att göra det själv. Men.. så lätt var det inte, Det dök upp en massa fel ideligen. Jag vet inget om ASP alls. Men jag har sett att det finns en massa duktiga människor här som vet en hel om detta språk.
Nu till saken. Det jag får upp efter att ha fyllt i formuläret på webbsidan är detta:
Fel som visas i webbläsaren:
Server object error 'ASP 0177 : 800401f3'
Server.CreateObject Failed
/test_4/form_ac.asp, line 19
800401f3
____________________________________
filen form_ac.asp
<%@ Language="VBscript" %>
<% Option Explicit %>
<html>
<head>
<title>Message Sent</title>
</head>
<body>
<%
'declare the variables that will receive the values
'receive the values sent from the form and assign them to variables
'note that request.form("name") will receive the value entered into the textfield
'called name, and so with email and message
Dim name, email, message, NewMailObj
name=request.form("name")
email=request.form("email")
message=request.form("message")
'create the mail object and send the details
line 19 Set NewMailObj=Server.CreateObject("CDONTS.NewMail")
line 20 NewMailObj.From = "minmailadress@bladet.se"
line 21 NewMailObj.To = "minmailadress@bladet.se"
NewMailObj.Subject = "New message sent.."
NewMailObj.Body = "the name you entered was " & name & _
"<br>the email was " & email & _
"<br>the message was " & message
'you need to add the following lines FOR the mail to be sent in HTML format
NewMailObj.BodyFormat = 0
NewMailObj.MailFormat = 0
NewMailObj.Send
'Close the email object and free up resources
Set NewMailObj = nothing
Response.write "The email was sent."
%>
</body>
</html>
Vad som är fel vet jag inte.
Hoppas att någon/några kan komma med bra tips om vad som är fel och hur man kan rätta till det.
Kanske även ett litet tips om ett bra formulär som fungerar och hur man kan installera det.
Tack på förhand!
Ser ut som att du inte ha CDONTS installerat på ditt webbhotell/server.
@ndersMedlem sedan juni 200026 914 inlägg CDONTS är en extremt gammal komponent (egentligen är allt gammalt när det gäller ASP dock) - men det är större chans att du kan använda CDO på webhotellet.
Nu är det väldigt länge sedan jag fipplade med ASP, men här är ett exempel:
http://www.paulsadowski.com/wsh/cdo.htm
Om du inte får det att lira får du nog fråga webhotellet vilka mailkomponenter som finns att tillgå för asp.
mvh
Ok, Tack för ditt svar. Jag har mailat otaliga gånger till mitt webbhotel som är Binero men något riktigt svar får jag inte. I alla fall inte hur jag skall lösa detta problem. Men jag får dyka på dem igen.
@ndersMedlem sedan juni 200026 914 inlägg Prova då med CDO - så här står hos Binero på informationssidan för migreringen:
Använder du CDONTS så har denna komponent ersatts av ASPEmail och CDO.
Jaha då får jag ta ett snack med Binero igen. Tack för dina svar och jag skall testa exemplet du gav mig.
@ndersMedlem sedan juni 200026 914 inlägg Varsågod!
Betyder det där att du fick ihop det? :)
Nej det gick inte alls! Men jag prövade ett annat formulär jag fick av Binero, men det funkade inte heller.
Här är det jag prövade.
Fel som visas i webbläsaren:
Error occurred: Host not found.
Host (change as necessary in script): smtp.nerikebladet.com
From (enter sender's address):
FromName (optional, enter sender's name):
To: (enter one recipient's address):
Subject:
Body:
Hela filen:
<%
' change to address of your own SMTP server
strHost = "smtp.nerikebladet.com"
If Request("Send") <> "" Then
Set Mail = Server.CreateObject("Persits.MailSender")
' enter valid SMTP host
Mail.Host = strHost
Mail.Username = "xxx"
Mail.Password = "xxx"
Mail.From = Request("From") ' From address
Mail.FromName = Request("FromName") ' optional
Mail.AddAddress Request("To")
' message subject
Mail.Subject = Request("Subject")
' message body
Mail.Body = Request("Body")
strErr = ""
bSuccess = False
On Error Resume Next ' catch errors
Mail.Send ' send message
If Err <> 0 Then ' error occurred
strErr = Err.Description
else
bSuccess = True
End If
End If
%>
<HTML>
<BODY BGCOLOR="#FFFFFF">
<% If strErr <> "" Then %>
<h3>Error occurred: <% = strErr %>
<% End If %>
<% If bSuccess Then %>
Success! Message sent to <% = Request("To") %>.
<% End If %>
<FORM METHOD="POST" ACTION="mailform.asp">
<TABLE CELLSPACING=0 CELLPADDING=2 BGCOLOR="#E0E0E0">
<TR>
<TD>Host (change as necessary in script):</TD>
<TD><B><% = strHost %></B></TD>
</TR>
<TR>
<TD>From (enter sender's address):</TD>
<TD><INPUT TYPE="TEXT" NAME="From"></TD>
</TR>
<TR>
<TD>FromName (optional, enter sender's name):</TD>
<TD><INPUT TYPE="TEXT" NAME="FromName"></TD>
</TR>
<TR>
<TD>To: (enter one recipient's address):</TD>
<TD><INPUT TYPE="TEXT" NAME="To"></TD>
</TR>
<TR>
<TD>Subject:</TD>
<TD><INPUT TYPE="TEXT" NAME="Subject"></TD>
</TR>
<TR>
<TD>Body:</TD>
<TD><TEXTAREA NAME="Body"></TEXTAREA></TD>
</TR>
<TR>
<TD COLSPAN=2><INPUT TYPE="SUBMIT" NAME="Send" VALUE="Send Message">
</TD>
</TR>
</TABLE>
</FORM>
</BODY>
</HTML>
@ndersMedlem sedan juni 200026 914 inlägg Använd gärna [kod]-taggar så blir din kod mer lättläst...
(jag redigerade in kod-taggar - och tog bort användarnamn / lösenord, "just in case")
@ndersMedlem sedan juni 200026 914 inlägg Ta bort raden On Error Resume Next så länge, så du får ett "riktigt" felmeddelande.
mvh
Då ska vi se om det fungerar. Under tiden tack för all hjälp. Jag återkommer om hur det fungerar. Jag kopierar av koden som jag ser den hör ovan. Som du kanske förstått så är jag ingen programmerare, men däremot grafisk designer.
Har testat nu som hastigast. Dock kommer det upp ett felmeddelande:
Error occurred: Host not found. Tydligen hittar den inte rätt.
Jag fortsätter att jobba på det.