Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
viva, tenho um sistema de envio de email usando aspmail mas estou a ter um erro de que esse componente nao esta instalado no servidor.
Já falei com o serviço de suporte e eles confirmao que tem o aspmail, infelizmente é o unico que tem logo nao posso fazer de outra forma.
Acham que me enganei em alguma coisa?
Set Mailer = Server.CreateObject ("SMTPsvg.Mailer")
Mailer.FromName = request.form("nome")
Mailer.FromAddress = request.form("email")
Mailer.Subject = "From site form:" & request.form("assunto")
Mailer.BodyText =request.form("nome") & request.form("email") & request.form("website") & request.form("mensagem")
Mailer.RemoteHost = "mail-fwd"
Mailer.AddRecipient "Aquasplender", "geral@aquasplender.com"
if Mailer.SendMail then
response.write ("Mensagem enviada com sucessso!")
else
response.write ("Ocorreu um erro!")
response.write ("Tipo de erro: " & Mailer.Response)
end if
Set Mailer = Nothing
Obrigado
viva,da:
Server object error 'ASP 0177 : 800401f3'
Server.CreateObject Failed
/html/contact.asp, line 214
800401f3
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Aquasplender | Formulario de Contactos</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<META NAME="Description" CONTENT="Formulario de Contactos">
<META NAME="Keywords" CONTENT="aquasplender, Formulario de Contactos, manutenção, aquarios, peixes, peixes de agua quente, peixes tropicais, peixes de aquario, aquariofilia">
<META NAME="Robots" content="index, follow">
<link rel="shortcut icon" href="images/favicon.ico" >
<link href="style.css" rel="stylesheet" type="text/css" />
<!--[if lt IE 7]><script type="text/javascript" src="ie_png.js"></script>
<script type="text/javascript">ie_png.fix('.png, #nav li a, .button span, .button a');</script><script language="javascript" type="text/javascript">
function clearText(field) if (field.defaultValue == field.value) field.value = '';
else if (field.value == '') field.value = field.defaultValue;
}
</script>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-20042826-1']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<script language="javascript">
function printdiv(printpage)var headstr = "<html><head><title></title></head><body>";
var footstr = "</body>";
var newstr = document.all.item(printpage).innerHTML;
var oldstr = document.body.innerHTML;
document.body.innerHTML = headstr+newstr+footstr;
window.print();
document.body.innerHTML = oldstr;
return false;
}
</script></head>
<body id="page1">
<div class="tail-right"></div>
<div class="tail-right-top"></div>
<div class="tail-top">
<div class="tail-bottom">
<div class="tail-bg">
<div class="top-bg">
<div class="tail-right-bot"></div>
<div class="bot-bg">
<div id="main"> <div id="header">
<h1><a>Aquasplender - Formulario de Contactos</a></h1>
<div id="search">
<style type="text/css">
@import url(http://www.google.com/cse/api/branding.css);
</style>
<div class="cse-branding-bottom">
<div class="cse-branding-form">
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load('search', '1');
google.setOnLoadCallback(function() {
google.search.CustomSearchControl.attachAutoCompletion(
'008338885934645488311:ujqwywlamys',
document.getElementById('q'),
'cse-search-box');
});
</script>
<form action="search.asp" id="cse-search-box">
<div>
<input type="hidden" name="cx" value="008338885934645488311:ujqwywlamys" />
<input type="hidden" name="cof" value="FORID:10" />
<input type="hidden" name="ie" value="UTF-8" />
<input type="text" value="Procura no google..." name="q" id="searchfield" title="searchfield" onfocus="clearText(this)" onblur="clearText(this)" />
<input type="submit" name="sa" id="searchbutton" title="Search" value=""/>
</div>
</form>
</div>
</div>
<form action="searchbd.asp" method="post">
<input type="text" value="Procura neste site..." name="u_search" id="searchfield" title="searchfield" onfocus="clearText(this)" onblur="clearText(this)" />
<input type="submit" name="sa" id="searchbutton" title="Search" value=""/>
</form>
</div>
<ul class="top-links_left">
<li><a href="index.htm"><img alt="home" src="images/icons/home.jpg" /></a></li>
<li><a href="contact.asp"><img alt="mail" src="images/icons/mail.jpg" /></a></li>
<li><a href="#" onclick="var id = document.getElementById('upload123'); if(id.style.display == 'block'){ id.style.display = 'none'; id.style.visibility = 'hidden';} else{ id.style.display = 'block'; id.style.visibility = 'visible';}" value="Upload de Ficheiros"><img alt="chat" src="images/icons/chat.jpg" /></a></li>
</ul>
<ul class="top-links_right">
<li><a href="#"><img alt="PT-BR" src="images/icons/pt.jpg" /></a></li>
<li><a href="#"><img alt="EN" src="images/icons/en.jpg" /></a></li>
</ul>
</div>
<div class="extra-img"><img alt="extra-img" src="images/extra-img.png" class="png"/></div>
<div class="wrapper">
<!-- nav --> <br><br><br>
<div id="nav">
<ul>
<li><a href="especies.asp">Especies</a></li>
<li><a href="plantas.asp">Plantas</a></li>
<li><a href="doencas.asp">Doenças</a></li>
<li><a href="diy.asp">DIY</a></li>
<li><a href="mercado.asp">Mercado</a></li>
<li><a href="corais.asp">Corais</a></li>
<li><a href="alimentacao.asp">Alimentação</a></li>
<li><a href="pragas.asp">Pragas</a></li>
<li><a href="rochas.asp">Rochas</a></li>
<li><a href="ferramentas.asp">Ferramentas</a></li>
<li><a href="como.asp">Como Fazer</a></li>
<li><a href="social.asp">Social</a></li>
</ul>
</div> <div id="content"><div class="inner_copy"></div>
<div class="section">
<!-- box begin1 -->
<div id="upload123">
<div class="box">
<div class="left-top-corner png"><div class="right-top-corner png"><div class="border-top png"></div></div></div>
<div class="border-left png">
<div class="border-right png">
<div class="inside png">
<h2>Sala de Chat</h2>
<iframe width="100%" height="150" src="chat.asp" scrolling="auto" allowtransparency="true" target="_self" name="chattt" border="0" frameborder="0" ></iframe>
</div>
</div>
</div>
<div class="left-bot-corner png"><div class="right-bot-corner png"><div class="border-bot png"></div></div></div>
</div>
<br><br>
</div>
<!-- box end1 -->
<!-- box begin -->
<div class="box">
<div class="left-top-corner png"><div class="right-top-corner png"><div class="border-top png"></div></div></div>
<div class="border-left png">
<div class="border-right png">
<div class="inside png">
<h2>
<a href="javascript:history.go(-1)"><img border="0" src="images/icons/back.png" width="24" height="24"></a>
Formulario de Contacto</h2>
<p></p>
<form name="insform" method="POST" id="insform" color="#FFFFFF">
<fieldset>
<div class="field"><label>Nome:</label><input type="text" name="nome" id="textboxes" value=""/></div>
<div class="field"><label>E-mail:</label><input type="text" name="email" id="textboxes" value=""/></div>
<div class="field"><label>Website:</label><input type="text" name="website" id="textboxes" value=""/></div>
<div class="field"><label>Assunto:</label><input type="text" name="assunto" id="textboxes" value=""/></div>
<div class="field"><label>Mensagem:</label><textarea cols="" name="mensagem" id="textboxes" rows="5"></textarea></div>
<div class="wrapper">
<div id="botaosave"><input type="image" id="insform" name="insform" src="images/thumbs/enviarmail.png" ></div>
</div>
</fieldset>
</form>
</div>
</div>
</div>
<div class="left-bot-corner png"><div class="right-bot-corner png"><div class="border-bot png"></div></div></div>
</div> </div>
</div>
</div>
</div> <div id="footer">
<div class="indent">
<a href="index.htm">Home</a> | <a href="especies.asp">Especies</a> | <a href="plantas.asp">Plantas</a> | <a href="doencas.asp">Doenças</a> | <a href="diy.asp">Diy</a>
| <a href="mercado.asp">Mercado</a> | <a href="corais.asp">Corais</a> | <a href="alimentação.asp">Alimentação</a> | <a href="pragas.asp">Pragas</a> | <a href="rochas.asp">Rochas</a>
| <a href="ferramentas.asp">Ferramentas</a> | <a href="como.asp">Como Fazer</a> | <a href="social.asp">Social</a> | <a href="contact.asp">Contactos</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
<%
if request.form("insform.x")>0 then
enviarmail
end if
sub enviarmail()
linha 214---> Set Mailer = Server.CreateObject ("SMTPsvg.Mailer")
Mailer.FromName = request.form("nome")
Mailer.FromAddress = request.form("email")
Mailer.Subject = "From site form:" & request.form("assunto")
Mailer.BodyText =request.form("nome") & request.form("email") & request.form("website") & request.form("mensagem")
Mailer.RemoteHost = "mail-fwd"
Mailer.AddRecipient "Aquasplender", "geral@aquasplender.com"
if Mailer.SendMail then
' Message sent sucessfully
response.write ("Mensagem enviada com sucessso!")
else
' Message send failure
response.write ("Ocorreu um erro!")
response.write ("Tipo de erro: " & Mailer.Response)
end if
Set Mailer = Nothing
end sub
%>
pelo que pesquisei isto e falta do componente mas ele esta instalado.
o que sera?
obrigado
é realmente este erro é quando o componente nao tem no server, ou se seu plano de hospedagem, nao inclui o
componente.
dai a minha duvida visto ter falado com o apoio do hosting e eles me confirmarem que o meu plano tem esse componente a minha disposicao...
:joia: Olá razstec,
Eu trabalhei muito mas muito mesmo com formulário no provedor TECLA, eu posso estar errado totalmente, mas acho e tenho quase certeza que se você trocar abaixo mail-fwd por localhost poderá funcionar, já que os karas do seu provedor garantiu estar instalado, pelo que eu me lembro já tratei formulários que tinham o ASPMAIL como uso.
Troque aqui ---> Mailer.RemoteHost = "mail-fwd"
Por ---> Mailer.RemoteHost = "localhost"
Se nao funcionar, o jeito é trocar por outro. Se funcionar por favor avise-me em ti.leandroazevedo@gmail.com;
Abraços.
Leandro de Azevedo.
viva amigo obrigado, eles no apoio ao cliente nao sabiam o que se passava pelo que instalaram o cdonts :)
já esta a funcionar :)
obrigado na mesma
Ok!!!
Abraços,
Leandro de Azevedo.
B)
ja agora, to a ter alguma dificuldade em enviar o mail como html.
Eu fiz um ficheiro asp que sera o email mas nao o tou a conseguir enviar, o melhor que consigo é enviar como link.
alguma ideia??
existem exemplos no fórum de como enviar emails em formato HTML e até mesmo anexar arquivos, faça uma pesquisa...
Viva, consigo enviar atraves do .CreateMHTMLBody, o problema é que nao consigo que ele envie variaveis.
Eu precisava que ele envia-se isto:
.CreateMHTMLBody ("http://www.pagina.com/email.asp?id=<%=rs("id")%>")
mas da sempre internal error, a unica maneira de ele funcionar é pondo:
.CreateMHTMLBody ("http://www.pagina.com/")
mas a variavel é fulcral neste caso.
já corri tudo e mais alguma coisa, já vi os scrips do lab mas nao encontro nada que explique como enviar variaveis.
Posta esta linha completa: .CreateMHTMLBody ("http://www.pagina.com/email.asp?id=<%=rs("id")%>")
É basicamente isto:
<%@ Language=VBScript%>
<%
mes = ""
IsSuccess = false
sTo = "endereçodeenvio@gmail.com"
sFrom = Trim(Request.Form("email"))
sSubject = Trim(Request.Form("assunto"))
sMailServer = "127.0.0.1"
if Request("__action")="TestEMail" then
TestEMail()
end if
Sub TestEMail()
Set objMail = Server.CreateObject("CDO.Message")
Set objConf = Server.CreateObject("CDO.Configuration")
Set objFields = objConf.Fields
With objFields
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = sMailServer
.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 10
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Update
End With
With objMail
Set .Configuration = objConf
.From = sFrom
.To = sTo
.Subject = sSubject
.CreateMHTMLBody ("http://www.pagina.com/email.asp?id=<%=rs("id")%>")
End With
Err.Clear
on error resume next
objMail.Send
if len(Err.Description) = 0 then
mes = " Message sent to " + sTo
mes = mes + " TESTS COMPLETED SUCCESSFULLY!"
IsSuccess = true
Response.Write("alert('A sua mensagem foi enviada com sucesso');")
else
mes = " " + Err.Description + " TESTS FAILED!"
Response.Write("alert('A sua mensagem não foi enviada com sucesso, volte a tentar');")
end if
Set objFields = Nothing
Set objConf = Nothing
Set objMail = Nothing%>
Testa essa linha assim:
.CreateMHTMLBody ("http://www.pagina.com/email.asp?id=<%=rs("id")%>")
por
.CreateMHTMLBody ("http://www.pagina.com/email.asp?id="&rs("id")&"")
continua a dar Internal Server Error :(
Limpei o codigo de treta extra que podia estar a criar conflitos.
Conseguem alguma coisa errada?
<%@ Language=VBScript%>
<%
sTo = "aqua@gmail.com"
sFrom = Trim(Request.Form("email"))
sSubject = Trim(Request.Form("assunto"))
sMailServer = "127.0.0.1"
shtmlbody = ("http://www.aqua.com/news_email.asp?id="&rs("id")&"")
if Request("actnow")="gonow" then
gonow()
end if
Sub gonow()
Set objMail = Server.CreateObject("CDO.Message")
Set objConf = Server.CreateObject("CDO.Configuration")
Set objFields = objConf.Fields
With objFields
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = sMailServer
.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 10
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Update
End With
With objMail
Set .Configuration = objConf
.From = sFrom
.To = sTo
.Subject = sSubject
.CreateMHTMLBody = shtmlbody
End With
Err.Clear
on error resume next
objMail.Send
Set objFields = Nothing
Set objConf = Nothing
Set objMail = Nothingbasicamente seria
Enviando um e-mail HTML:
<%
Set myMail=CreateObject("CDO.Message")
myMail.Subject="Enviando e-mail com CDO"
myMail.From="meuemail@meudominio.com"
myMail.To="alguém@outrodominio.com"
myMail.HTMLBody = "<h1>Esta é uma mensagem.</h1>"
myMail.Send
set myMail=nothing
%>
Enviando um e-mail HTML que envia uma página de um site:
<%
Set myMail=CreateObject("CDO.Message")
myMail.Subject="Enviando e-mail com CDO"
myMail.From="meuemail@meudominio.com"
myMail.To="alguém@outrodominio.com"
myMail.CreateMHTMLBody "http://www.seu site.com"
myMail.Send
set myMail=nothing
%>
mas o problema e que preciso enviar variaveis e quando adiciono a pagina especifica e as variaveis ele deixa de dar.
tente fazer assim:
variavel=rs("id")
shtmlbody = ("http://www.aqua.com/news_email.asp?id="&variavel&"")
esta na mesma :(
podes ver aqui: Clique aqui
poça isto esta-me mesmo a irritar...
tenho o projecto parado por causa disto... o envio por texto funciona bem.
Já to farto de correr manuais e sites de apoio e nao percebo o que possa estar mal.
Vou postar a pagina toda, pode ser que ajude...
Quando um utilizadar insere dados novos na bd ao carregar em gravar ele grava na bd e abre esta pagina:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head><title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />set conn = CreateObject("ADODB.Connection")
conn.Provider = "Microsoft.Jet.Oledb.4.0"
conn.Open Server.MapPath("zaq8953964imjok/ewfatf6767fsdfw67f5eqw76.mdb")
set rs=server.createobject("adodb.recordset")
lerdoenca= "select * from newsletter"
rs.open lerdoenca,conn,1
%>
</head>
<body>
<%
if rs.recordcount > 0 then
for j=1 to rs.recordcount
%>
<%rs.Fields("mailnewsletter")%>
<%@ Language=VBScript%>
<%
sTo = Trim(rs.Fields("mailnewsletter")")
sFrom = "geral@aquasplender.com"
sSubject = "Novidades Aquaticas de Aquasplender.com"
sMailServer = "127.0.0.1"
shtmlbody = ("http://www.aquasplender.com/news_email.asp?tbl='"&tbl&"'&newsemail="&rs.("mailnewsletter")"&id="&rs("id")&"")
if Request("actnow")="gonow" then
gonow()
end if
Sub gonow()
Set objMail = Server.CreateObject("CDO.Message")
Set objConf = Server.CreateObject("CDO.Configuration")
Set objFields = objConf.Fields
With objFields
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = sMailServer
.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 10
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Update
End With
With objMail
Set .Configuration = objConf
.From = sFrom
.To = sTo
.Subject = sSubject
.CreateMHTMLBody = shtmlbody
End With
Err.Clear
on error resume next
objMail.Send
Set objFields = Nothing
Set objConf = Nothing
Set objMail = Nothing<% rs.movenext
next
else
end if
%>
</body>
</html>
Esta pagina ao abrir vai enviar um mail para cada endereço de email inserido na tabela newsletter com a variavel id, a variavel tbl e a variavel mailnewsletter de modo a que o receptor do email ao abrir este ele disponibilize os dados relativos a informação adicionada por aquele utilizador expecifico.
esta linha:
sMailServer = "127.0.0.1"
Está correta ?
e aqui:
shtmlbody = ("http://www.aquasplender.com/news_email.asp?tbl='"&tbl&"'&newsemail="&rs.("mailnewsletter")"&id="&rs("id")&"")
Deu um response.write para ver se está saindo como esperado ?
e aqui:
tbl='"&tbl&"'
Acho que precisa tirar as aspas simples, pois o resultado seria: tbl='123' e querystring não tem aspas simples pra funcionar
>
esta linha:
sMailServer = "127.0.0.1"
Está correta ?
penso que sim pelo menos foi o que os tipos do serviçode hosting me mandaram usar, para alem disso ele funciona com o email de texto.
>
e aqui:
shtmlbody = ("http://www.aquasplender.com/news_email.asp?tbl='"&tbl&"'&newsemail="&rs.("mailnewsletter")"&id="&rs("id")&"")
Deu um response.write para ver se está saindo como esperado ?
nao vale de nada pois ele da-me uma pagina em branco a dizer
Internal Server Error
>
e aqui:
tbl='"&tbl&"'
Acho que precisa tirar as aspas simples, pois o resultado seria: tbl='123' e querystring não tem aspas simples pra funcionar
bem visto. ja retirei mas nao alterou o resultado
passei o <%@ Language=VBScript%> para a linha 1 e já esta a devolver erros
agora diz que falta um ) na seguinte linha:
shtmlbody = ("http://www.aquasplender.com/news_email.asp?tbl='"&tbl&"'&newsemail="&rs.("mailnewsletter")"&id="&rs("id")&"")
Microsoft VBScript compilation error '800a03ee'
Expected ')'
/html/sendmailnews.asp, line 37
shtmlbody = ("http://www.aquasplender.com/news_email.asp?tbl="&tbl&"&newsemail="&rs.Fields("mailnewsletter")"&id="&rs("id")&"")
------------------------------------------------------------------------------------------------------------^
o que mostra quando você der um response.write em shtmlbody
a concatenação esta incorreta...
nao mostra nada, nao consigo que ele disponibilize o texto
faltava um &:
shtmlbody = ("http://www.aquasplender.com/news_email.asp?tbl="&tbl&"&newsemail="&rs.Fields("mailnewsletter")&"&id="&rs("id")&"")
agora da erro na SUB :S
retirei a sub, nao estava la a fazer nada :S
Microsoft VBScript runtime error '800a01c2'
Wrong number of arguments or invalid property assignment: 'Fields'
/html/sendmailnews.asp, line 29
Isso pode acontecer ao tentar chamar um método como uma propriedade, ou vice-versa, ou chamando um método de um objeto interno, e passando muitos argumentos.
No entanto, a causa mais comum para isso é usando ADODB.Recordset para criar um novo registro, e depois ter algo parecido com isto:
<%
' ...
RS.Fields.Item("NomedaColuna") = "algumaString"
' ...
%>
qual o número do erro ?
poste numero da linha e o code