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

if en un array

Estas en el tema de if en un array en el foro de ASP Clásico en Foros del Web. hola a todos. Estoy creando un sistema de subida de archivos. El problema viene en que quiero comprobar si la extension de un archivo, existe ...
  #1 (permalink)  
Antiguo 18/11/2009, 23:01
 
Fecha de Ingreso: junio-2002
Mensajes: 321
Antigüedad: 22 años, 10 meses
Puntos: 3
if en un array

hola a todos.

Estoy creando un sistema de subida de archivos. El problema viene en que quiero comprobar si la extension de un archivo, existe en un array.

Código:
extensions = Array ("doc", "docx", "jpg", "jpeg") 

If (fs.GetExtensionName(Request("archivo")))=extensions Then
       Response.Write("El archivo existe en el array")
Else
       Response.Write("El archivo ....")
End If
Obviamente falla, pero he intentado buscar como hacer un if a un array en asp clasico... y no hay manera.

¿alguna ayuda?

PD: se que en el ejemplo no he puesto "Server.CreateObject("Scripting.FileSystemObject") " pero supongo que... os hareis a la idea de que lo tengo declarado en mi archivo.
  #2 (permalink)  
Antiguo 19/11/2009, 00:09
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 3 meses
Puntos: 98
Respuesta: if en un array

Creo que tienes que iterar el array para determinar si la extension de tu archivo se encuentra en el.

Código:
Dim boolExisteExtension
extensions = Array ("doc", "docx", "jpg", "jpeg") 

boolExisteExtension = false
archivo = fs.GetExtensionName(Request("archivo"))

for i = 0 to uBound(extensions)
  if archivo = extensions (i) then
     boolExisteExtension = true
     exit for
  end if
next

If boolExisteExtension Then
       Response.Write("El archivo existe en el array")
Else
       Response.Write("El archivo ....")
End If

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 19/11/2009, 08:29
 
Fecha de Ingreso: junio-2002
Mensajes: 321
Antigüedad: 22 años, 10 meses
Puntos: 3
Respuesta: if en un array

se agradece tu ayuda goldman. Voy a probar.
  #4 (permalink)  
Antiguo 19/11/2009, 08:43
 
Fecha de Ingreso: junio-2002
Mensajes: 321
Antigüedad: 22 años, 10 meses
Puntos: 3
Respuesta: if en un array

Tengo una duda (aprender siempre es bueno).

Porque se declara al principio "Dim boolExisteExtension" como false?
  #5 (permalink)  
Antiguo 19/11/2009, 08:48
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 3 meses
Puntos: 98
Respuesta: if en un array

Hola Nateskin
Simplemente porque es más seguro pues se supone que cumpliendo con la condición su valor solo cambia una vez por ciclo, es como aquello que todo mundo es inocente hasta que se demuestra lo contrario en este caso se está diciendo que la extensión no existe, y se tiene que comprobar su existencia mediante el ciclo.

Espero no haberte enredado.

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #6 (permalink)  
Antiguo 19/11/2009, 10:45
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Respuesta: if en un array

Tan fácil que hubiera sido contestar: "para darle un valor inicial a la variable"

ok,ok, ya no me meto donde no me llaman
  #7 (permalink)  
Antiguo 19/11/2009, 11:52
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 3 meses
Puntos: 98
Respuesta: if en un array

Cita:
Iniciado por Myakire Ver Mensaje
Tan fácil que hubiera sido contestar: "para darle un valor inicial a la variable"

ok,ok, ya no me meto donde no me llaman
Te hubiera baneado cuando tenía la oportunidad
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #8 (permalink)  
Antiguo 19/11/2009, 12:56
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 24 años, 2 meses
Puntos: 535
Respuesta: if en un array

Te paso otra alternativa usando InStr. Lo que no estoy seguro si el número 1 es para que compare sin importar las mayúsculas y las minúsculas:

Código:
extensions = "|doc|docx|jpg|jpeg|"
extension = "|" & fs.GetExtensionName(Request("archivo")) & "|"
If InStr(extensions, extension, 1) > 0 tehn

Cita:
Iniciado por u_goldman Ver Mensaje
Te hubiera baneado cuando tenía la oportunidad


__________________
...___...
  #9 (permalink)  
Antiguo 19/11/2009, 17:43
 
Fecha de Ingreso: junio-2002
Mensajes: 321
Antigüedad: 22 años, 10 meses
Puntos: 3
Respuesta: if en un array

AlZuwaga gracis por tu solucion, aparte de tener menos codigo, aún asi, nose porque, me fio mas de los arrays :P.

Y gracias a los demas por vuestra solucion.

Un saludo.
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 10:30.