cacao maravillao

19/02/2004 - 18:48 por Ems | Informe spam
Hola sñres, me estoy volviendo loco y el problema es q no me aclaro, comento
un poco a ver si alguien sabe, el caso es que tengo una pagina con un
formulario, con 13 campos, lo que quiero es que cuando le den al boton
enviar, me envie un email con los datos("esto ya lo he conseguido) pero q a
la misma vez me guarde los datos del formulario en una base de datos sql, el
problema es q la pagina ni se muestra, me dice error del servidor 500
os paso el codigo por si alguno me puede ayudar, pero me parece a mi q esto,
esta complicao.




<%else
set Mail=Server.CreateObject("Persits.MailSender")
domicilio=Request.Form("domicilio")
url=Request.Form("url")
ciudad=Request.Form("ciudad")
web=Request.Form("web")
nombre=Request.Form("nombre")
apellidos=Request.Form("apellidos")
empresa=Request.Form("empresa")
cp=Request.Form("cp")
pais=Request.Form("pais")
fax=Request.Form("fax")
email=Request.Form("email")
telefono=Request.Form("telefono")
marcas=Request.Form("marcas")
comentarios=Request.Form("comentarios")
comentarios=Server.HTMLEncode(comentarios)
comentarios=Replace(comentarios,vbCr,"<br>")
Mail.Host = "correo.dominio.com"
Mail.Port = 25
Mail.From=email
Mail.AddAddress "info@midominio.com"

Mail.Subject = "Solicitud de Informacion Fotocopiadoras"
Mail.IsHTML = True
strTexto="<html><body><font size=2 color=Blue face=Verdana><b>Solicitud
Información Fotocopiadoras</b></font><br><br><font size=2 color=#525252
face=Verdana> <b>Nombre: </b>"&nombre&"<BR><b>Apellidos:
</b>"&apellidos&"<BR><b>Telefono: </b>"&telefono&"<br><b>Email:
</b>"&email&"<br><b>Ciudad: </b>"&ciudad&"<br><b>Interes en las marcas:
</b>"&marcas&"<br><b>Comentarios: </b><br> "&comentarios&"<br><b>Empresa:
</b>"&empresa&"<br><b>Codigo Postal: </b>"&cp&"<br><b>Fax:
</b>"&fax&"<br><b>Pais: </b>"&pais&"<br><b>Tiene Web?:
</b>"&web&"<br><b>Domicilio: </b>"&domicilio&"<br><b>Url:
</b>"&url&"</font></BODY></HTML>"
Mail.Body=strTexto
On Error Resume Next
Mail.Send
If Err <> 0 Then
Response.Write "Ha ocurrido un error " & Err.Description & "
<br>Push Back<br>Disculpen las molestias: www.midominio.COM"
Else
Response.redirect "index.htm"
End if


%>

<% Set Conexion=Server.CreateObject("ADODB.Connection")
Conexion.Open="Provider=SQLOLEDB;Data source=nt15.gicinternet.com
;Initial Catalog=clientes;user id=edyweb;password=palomazo40;"
set Objcomando=Server.CreateObject("ADODB.Command")
objComando.ActiveConnection=Conexion
objcomando.CommandType=adcmdText
objcomando.CommandText="INSERT INTO clientes
(nombre,apellidos,ciudad,pais,domicilio,web,empresa,cp,email,telefono,fax,co
mentarios,marcas) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)"
SET
PARAMETRO1=objcomando.CreateParameter("param1",varchar,adparamInput,50,nombr
e)
SET
PARAMETRO2=objcomando.CreateParameter("param2",varchar,adparamInput,50,apell
idos)
SET
PARAMETRO3=objcomando.CreateParameter("param3",varchar,adparamInput,50,ciuda
d)
SET
PARAMETRO4=objcomando.CreateParameter("param4",varchar,adparamInput,50,pais)
SET
PARAMETRO5=objcomando.CreateParameter("param5",varchar,adparamInput,50,domic
ilio)
SET
PARAMETRO6=objcomando.CreateParameter("param6",varchar,adparamInput,50,web)
SET
PARAMETRO7=objcomando.CreateParameter("param7",varchar,adparamInput,50,empre
sa)
SET
PARAMETRO8=objcomando.CreateParameter("param8",varchar,adparamInput,50,cp)
SET
PARAMETRO9=objcomando.CreateParameter("param9",varchar,adparamInput,50,email
)
SET
PARAMETRO10=objcomando.CreateParameter("param10",varchar,adparamInput,50,tel
efono)
SET
PARAMETRO11=objcomando.CreateParameter("param11",varchar,adparamInput,50,fax
)
SET
PARAMETRO12=objcomando.CreateParameter("param12",varchar,adparamInput,50,com
entarios)
SET
PARAMETRO14=objcomando.CreateParameter("param13",varchar,adparamInput,50,mar
cas)
objcomando.Parameters.Append PARAMETRO1
objcomando.Parameters.Append PARAMETRO2
objcomando.Parameters.Append PARAMETRO3
objcomando.Parameters.Append PARAMETRO4
objcomando.Execute
conexion.Close()
set Conexion=Nothing%>

end if
%>
 

Leer las respuestas

#1 Miguel González
19/02/2004 - 19:24 | Informe spam
Hola

Yo te recomendaría que miraras con algo de profundidad el tema de los
"StoreProcedures" para trabajar con SQLServer.

Mientras, prueba a construir la consulta así (eliminando todo el tema de
parametros):

Dim sql1
sql1 = "INSERT INTO clientes
(nombre,apellidos,ciudad,pais,domicilio,web,empresa,cp,email,telefono,fax,co
mentarios,marcas)"
sql1 = sql1 & "VALUES("
sql1 = sql1 & "'" & nombre & "', "
sql1 = sql1 & "'" & apellidos & "', "
sql1 = sql1 & "'" & ciudad & "', "
sql1 = sql1 & "'" & pais & "', "
sql1 = sql1 & "'" & domicilio & "', "
sql1 = sql1 & "'" & web & "', "
sql1 = sql1 & "'" & empresa & "', "
sql1 = sql1 & "'" & cp & "', "
sql1 = sql1 & "'" & email & "', "
sql1 = sql1 & "'" & telefono & "', "
sql1 = sql1 & "'" & fax & "', "
sql1 = sql1 & "'" & comentarios & "', "
sql1 = sql1 & "'" & marcas & "')"
objcomando.CommandText= sql1
objcomando.Execute
conexion.Close()
set Conexion=Nothing
%>

Por otro lado, no es aconsejable que postees los datos detallados de
conexión (servidor, user y password)... ;-)

Saludos!
Miguel


"Ems" escribió en el mensaje
news:
Hola sñres, me estoy volviendo loco y el problema es q no me aclaro,


comento
un poco a ver si alguien sabe, el caso es que tengo una pagina con un
formulario, con 13 campos, lo que quiero es que cuando le den al boton
enviar, me envie un email con los datos("esto ya lo he conseguido) pero q


a
la misma vez me guarde los datos del formulario en una base de datos sql,


el
problema es q la pagina ni se muestra, me dice error del servidor 500
os paso el codigo por si alguno me puede ayudar, pero me parece a mi q


esto,
esta complicao.




<%else
set Mail=Server.CreateObject("Persits.MailSender")
domicilio=Request.Form("domicilio")
url=Request.Form("url")
ciudad=Request.Form("ciudad")
web=Request.Form("web")
nombre=Request.Form("nombre")
apellidos=Request.Form("apellidos")
empresa=Request.Form("empresa")
cp=Request.Form("cp")
pais=Request.Form("pais")
fax=Request.Form("fax")
email=Request.Form("email")
telefono=Request.Form("telefono")
marcas=Request.Form("marcas")
comentarios=Request.Form("comentarios")
comentarios=Server.HTMLEncode(comentarios)
comentarios=Replace(comentarios,vbCr,"<br>")
Mail.Host = "correo.dominio.com"
Mail.Port = 25
Mail.From=email
Mail.AddAddress ""

Mail.Subject = "Solicitud de Informacion Fotocopiadoras"
Mail.IsHTML = True
strTexto="<html><body><font size=2 color=Blue face=Verdana><b>Solicitud
Información Fotocopiadoras</b></font><br><br><font size=2 color=#525252
face=Verdana> <b>Nombre: </b>"&nombre&"<BR><b>Apellidos:
</b>"&apellidos&"<BR><b>Telefono: </b>"&telefono&"<br><b>Email:
</b>"&email&"<br><b>Ciudad: </b>"&ciudad&"<br><b>Interes en las marcas:
</b>"&marcas&"<br><b>Comentarios: </b><br> "&comentarios&"<br><b>Empresa:
</b>"&empresa&"<br><b>Codigo Postal: </b>"&cp&"<br><b>Fax:
</b>"&fax&"<br><b>Pais: </b>"&pais&"<br><b>Tiene Web?:
</b>"&web&"<br><b>Domicilio: </b>"&domicilio&"<br><b>Url:
</b>"&url&"</font></BODY></HTML>"
Mail.Body=strTexto
On Error Resume Next
Mail.Send
If Err <> 0 Then
Response.Write "Ha ocurrido un error " & Err.Description & "
<br>Push Back<br>Disculpen las molestias: www.midominio.COM"
Else
Response.redirect "index.htm"
End if


%>

<% Set Conexion=Server.CreateObject("ADODB.Connection")
Conexion.Open="Provider=SQLOLEDB;Data source=nt15.gicinternet.com
;Initial Catalog=clientes;user id=edyweb;password=palomazo40;"
set Objcomando=Server.CreateObject("ADODB.Command")
objComando.ActiveConnection=Conexion
objcomando.CommandType=adcmdText
objcomando.CommandText="INSERT INTO clientes



(nombre,apellidos,ciudad,pais,domicilio,web,empresa,cp,email,telefono,fax,co
mentarios,marcas) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?)"
SET



PARAMETRO1=objcomando.CreateParameter("param1",varchar,adparamInput,50,nombr
e)
SET



PARAMETRO2=objcomando.CreateParameter("param2",varchar,adparamInput,50,apell
idos)
SET



PARAMETRO3=objcomando.CreateParameter("param3",varchar,adparamInput,50,ciuda
d)
SET



PARAMETRO4=objcomando.CreateParameter("param4",varchar,adparamInput,50,pais)
SET



PARAMETRO5=objcomando.CreateParameter("param5",varchar,adparamInput,50,domic
ilio)
SET



PARAMETRO6=objcomando.CreateParameter("param6",varchar,adparamInput,50,web)
SET



PARAMETRO7=objcomando.CreateParameter("param7",varchar,adparamInput,50,empre
sa)
SET
PARAMETRO8=objcomando.CreateParameter("param8",varchar,adparamInput,50,cp)
SET



PARAMETRO9=objcomando.CreateParameter("param9",varchar,adparamInput,50,email
)
SET



PARAMETRO10=objcomando.CreateParameter("param10",varchar,adparamInput,50,tel
efono)
SET



PARAMETRO11=objcomando.CreateParameter("param11",varchar,adparamInput,50,fax
)
SET



PARAMETRO12=objcomando.CreateParameter("param12",varchar,adparamInput,50,com
entarios)
SET



PARAMETRO14=objcomando.CreateParameter("param13",varchar,adparamInput,50,mar
cas)
objcomando.Parameters.Append PARAMETRO1
objcomando.Parameters.Append PARAMETRO2
objcomando.Parameters.Append PARAMETRO3
objcomando.Parameters.Append PARAMETRO4
objcomando.Execute
conexion.Close()
set Conexion=Nothing%>

end if
%>





Preguntas similares