Foros del Web » Programando para Internet » ASP Clásico »

ayuda a novato con ganas

Estas en el tema de ayuda a novato con ganas en el foro de ASP Clásico en Foros del Web. Buenas tardes a todos: Soy muy nuevo en esto de ASP pero en lo que me pongo al dia con estos manuales y las consultas ...
  #1 (permalink)  
Antiguo 09/08/2005, 11:29
 
Fecha de Ingreso: agosto-2005
Mensajes: 4
Antigüedad: 18 años, 10 meses
Puntos: 0
ayuda a novato con ganas

Buenas tardes a todos:

Soy muy nuevo en esto de ASP pero en lo que me pongo al dia con estos manuales y las consultas a los foros quiero ir disipando dudas e ir investigando despues el porque.

os lanzo la primera pregunta.

¿Como puedo cambiar el valor de las variables por valores fijos y donde?.

Con un par de ejemplos me vale el resto tengo que intentar hacerlo yo.

Gracias a todos por adelantado.



//inicio de codigo
<%
Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
cuerpo = ""
for i = 1 to request.form.count
nombre = request.form.key(i)
valor = request.form.item(i)
select case nombre
case "smtp" Mailer.RemoteHost = valor
case "remitente"
Mailer.FromName = valor
Mailer.FromAddress = valor
case "asunto" Mailer.Subject = valor
case "para" Mailer.AddRecipient valor,valor
case "envio_correcto" envio_correcto = valor
case "envio_erroneo" envio_erroneo = valor
case else cuerpo = cuerpo & nombre & " = " & valor & vbcrlf
end select
Next
Mailer.AddRecipient AddRecipient1,AddRecipient2
Mailer.BodyText = cuerpo
Mailer.charset = 2

if Mailer.sendmail then
IF request("email")<>"" and request("mensaje")<>"" THEN
Mailer.ClearBodyText
Mailer.ClearRecipients
Mailer.AddRecipient request("email"),request("email")
Mailer.BodyText = request("mensaje")
Mailer.sendmail
END IF
response.redirect(envio_correcto)
else
response.redirect(envio_erroneo)
end if
%>
// fin de codigo
  #2 (permalink)  
Antiguo 09/08/2005, 11:32
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
por ejemplo, ¿de cuál de todas las variables que usas en el script quieres cambiar?
  #3 (permalink)  
Antiguo 09/08/2005, 11:48
 
Fecha de Ingreso: agosto-2005
Mensajes: 4
Antigüedad: 18 años, 10 meses
Puntos: 0
cualqueira, te cuento mi problema para que sepas el porqué.

resulta que tengo un dominio en gravitynet.com en un hosting windows.

Bien, ellos tienen un formulario de pruebas..... con el codigo que te envio, lo que yo quiero hacer es adaptar ese codigo que ya he comprobado que funciona a un formaulari que estoy haciendo en flash.

El tema es que alguno de los campos son obligatorios como por ejemplo el servidor smtp.

claro esta yo no quiero tener que introducir la direccion del servidor smtp ni tampoco la pagina web que indica que se envio o la que indica lo contrario, lo que quiero , ya que estas campos son obligatorios es el poder dejarles un valor fijo para no tener que incluirlos en el formulario flash.

No se si me he explicado.

por cierto, gracias por tu rapida respuesta
  #4 (permalink)  
Antiguo 09/08/2005, 12:21
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
aaaahhh, bueno, el script que mandas hace un ciclo para recorrer todos los elementos de un formulario, en donde aparentemente se manda tambien la dirección del Host (llamado smtp), basta con sacarlo del for.


Código:
Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
cuerpo = ""
for i = 1 to request.form.count
   nombre = request.form.key(i)
   valor = request.form.item(i)
   select case nombre
        case "asunto" Mailer.Subject = valor
        case "para" Mailer.AddRecipient valor,valor
        case "envio_correcto" envio_correcto = valor
        case "envio_erroneo" envio_erroneo = valor
        case else cuerpo = cuerpo & nombre & " = " & valor & vbcrlf
   end select
Next

Mailer.RemoteHost = 123.32.23.10
Mailer.FromName = "Juan Perez"
Mailer.FromAddress = "[email protected]"
Mailer.AddRecipient AddRecipient1,AddRecipient2
Mailer.BodyText = cuerpo
Mailer.charset = 2
Si lo deseas, elimina el ciclo y obten directamente los parámetros por su nombre:

Mailer.FromName = Request.Form("From")
o si es por GET y no por POST
Mailer.FromName = Request.QueryString("From")
o si "te vale" el método
Mailer.FromName = Request("From")

Esto, claro, si tienes un campo de formulario llamdo "From" que se mande a tu página

Saludos
  #5 (permalink)  
Antiguo 12/08/2005, 02:41
 
Fecha de Ingreso: agosto-2005
Mensajes: 4
Antigüedad: 18 años, 10 meses
Puntos: 0
gracias por la ayuda

Gracias por la ayuda, lo he probado e incluso lo he modificado y he conseguido justo lo que necesitaba.

Ahora voy a reslizar un paso mas y en lugar de jugar con el formulario de pruebas que me dierón, voy a realizar mi propio formulario para ver si soy capaz de hacerlo.

Nuevamente gracias por todo
  #6 (permalink)  
Antiguo 17/08/2005, 02:50
 
Fecha de Ingreso: agosto-2005
Mensajes: 4
Antigüedad: 18 años, 10 meses
Puntos: 0
al ataque de nuevo con el formulario.

Nuevamente me encuentro problemas con el formulario y ademas alguna duda.

tengo el siguiente codigo:
Cita:
<%
Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
cuerpo = ""

Mailer.Subject = "Solicitud de Oferta"
Mailer.RemoteHost = "mail.crosswaysservices.com"
Mailer.FromAddress = "[email protected]"
Mailer.FromName = " Alan Trigo "
Mailer.AddRecipient "Crossways services", "[email protected]"


Mailer.BodyText= request("emp")
Mailer.BodyText= request("email2")
Mailer.BodyText= request("pcontacto")
Mailer.BodyText= request("telefono")
Mailer.BodyText= request("fax")
Mailer.BodyText= request("nbultos")
Mailer.BodyText= request("pbruto")
Mailer.BodyText= request("cubicaje")
Mailer.BodyText= request("ociudad")
Mailer.BodyText= request("opais")
Mailer.BodyText= request("ocp")
Mailer.BodyText = request("descripcion1")

Mailer.charset = 2

Mailer.SendMail
%>
Bien, el mail lo envia perfectamente, no me da error y lo recibo de forma rapida y clara.....pero, me gustaria que en el mail que recibo me digera a que campo corresponde cada valor, por ejemplo:

Empresa : " y aqui indicar el valor del formulario"

¿ Como puedo hacer eso ?

y por otro lado, Seguro que hay una forma de optimizar esta programacion, me podrias indicar por donde empezar....

Gracias por aclararme las dudas y permitir seguir avanzando en el este lenguaje de programación.
  #7 (permalink)  
Antiguo 17/08/2005, 08:33
Avatar de macedo  
Fecha de Ingreso: enero-2002
Ubicación: Madrid
Mensajes: 124
Antigüedad: 22 años, 4 meses
Puntos: 0
Hola jrlavado.

Si lo que quieres es que antes del valor de un campo te salga a que corresponde, simplemente añade una cadena con el nombre del campo antes de meter el valor.

Por ejemplo:

Mailer.BodyText= request("fax")

Sería.

Mailer.BodyText= "Numero de Fax: "&request("fax")

No se si es eso lo que quieres. Igual no te he entendido bien.

Saludos.
  #8 (permalink)  
Antiguo 27/04/2006, 14:48
 
Fecha de Ingreso: marzo-2005
Mensajes: 68
Antigüedad: 19 años, 2 meses
Puntos: 0
Con relacion al mismo tema

Si, yo uso dos ó mas de un formulario en una pagina, como podria identificarlo, según el siguiente codigo?:

for i=1 to request.form.count
sql = sql & request.form.key(i) & : & request.form.item(i) & vbCrLf
Next


Prove con lo siguiente:

request.form("f1").key(i) ERROR!
request.form["f1"].key(i) ERROR!

alguien me puede ayudar!!!????
__________________
:adios: Janyta
  #9 (permalink)  
Antiguo 27/04/2006, 14:59
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
El método Request en asp clásico no tiene esas propiedades, lo que tendrías que hacer es nombrar de manera diferente a tu control html, o bien hacer un split del valor que te llegue(no recomendado) para obtener el valor deseado [0],[1]

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #10 (permalink)  
Antiguo 27/04/2006, 15:05
 
Fecha de Ingreso: marzo-2005
Mensajes: 68
Antigüedad: 19 años, 2 meses
Puntos: 0
a que te refieres con "nombrar de manera diferente a tu control html"?
Sorry, pero no entiendo?
__________________
:adios: Janyta
  #11 (permalink)  
Antiguo 28/04/2006, 18:39
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
request.form("formulario1")(1)
request.form("formulario2")(1)

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:55.