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

problema con codigo

Estas en el tema de problema con codigo en el foro de ASP Clásico en Foros del Web. hola nuevamente tengo problemas aqui tengo un codigo que no me permite subir archivos JPG solo GIF y yo modifique lo que marco con rojo ...
  #1 (permalink)  
Antiguo 12/10/2007, 15:40
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
Pregunta problema codigo gif no jpg

hola nuevamente tengo problemas aqui tengo un codigo que no me permite subir archivos JPG solo GIF y yo modifique lo que marco con rojo a jpg y nada aqui va el codigo...

<%
'pagina.asp
%>
<!--#include file="xelupload.asp"-->
<%
Dim oConn, rs, SQL
Dim objUpload, objFich, strNombre, strEdad
Dim maxtam, strNombreFichero

'nuestro tamaño máximo
maxtam = 45 * 3048

set objUpload = new xelUpload
objUpload.Upload()

'recuperamos los campos usuario y edad
strNombre = objUpload.Form("usuario")
strEdad = objUpload.Form("edad")

'si no ha subido ningún fichero, le avisamos
if objUpload.Ficheros.Count = 0 then
Response.Write("¡No has subido ningún fichero!")
else
'accedemos al fichero por su nombre en el formulario
set objFich = objUpload.Ficheros("imagen")
if objFich.Tamano <= maxtam and objFich.TipoContenido = "image/GIF" then
'Es el fichero correcto, vamos a guardarlo en todas partes.

'Primero, en nuestro directorio actual con el nombre que tiene
objFich.Guardar Server.MapPath(".")

'Ahora, en el directorio upload, con la fecha de hoy como nombre
strNombreFichero = Day(Date) & Month(Date) & Year(Date)
objFich.GuardarComo strNombreFichero, Server.MapPath("upload")

'Ahora nos conectamos a una base de datos
set oConn = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")

'Nos conectamos con ODBC sin DSN, suponiendo que la base
'de datos está en este mismo directorio
oConn.Open "Driver={Microsoft Access Driver (*.mdb)};" _
& "DBQ=" & Server.MapPath("usuarios.mdb")
SQL = "SELECT * FROM usuarios"
'Abrimos el Recordset: el 0 es el cursor adForwardOnly
' y el 2 es el cerrojo adLockPessimistic
rs.Open SQL, oConn, 0, 2

'Añadimos un nuevo registro
rs.AddNew
rs.Fields("Nombre") = strNombre
rs.Fields("Edad") = strEdad
rs.Fields("NombreFichero") = objFich.Nombre

'Llamamos a GuardarBD pasandole el campo correspondiente!!!
objFich.GuardarBD rs.Fields("Imagen")

'Guardamos el nuevo registro
rs.Update

'y limpiamos todo que vienen los padres
rs.Close
set rs = nothing
oConn.Close
set oConn = nothing

'¡Todo correcto!
Response.Write "Se ha añadido el nuevo usuario <b>" & strNombre & "</b>, " _
& "con el fichero " & objFich.Nombre & " de tamaño " & objFich.Tamano & "."

'Limpiamos nuestro xelUpload y el fichero
set oFich = nothing
set objUpload = nothing

else
'No era un fichero válido
Response.Write("No es un fichero aceptable. ")
Response.Write("Tiene que ser un fichero GIF de menos de 15k.")
end if

end if
%>

como lo puedo solucionar todo esto se sube a una data base....solo me funciona con gif y quiero jpg muchas gracias....
  #2 (permalink)  
Antiguo 12/10/2007, 17:16
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
Re: problema codigo gif no jpg

Seguramente intentaste con image/JPG... intentá ahora con image/JPEG a ver qué ocurre.
__________________
...___...
  #3 (permalink)  
Antiguo 18/10/2007, 08:32
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
Pregunta problema con codigo

hola tengo un problema quizas es sencillo pero no se como hacer para que me acepte fotos jpeg solo acepta gif aqui les mando el codigo yo modifique lo que esta con rojo en el codigo por image/jpeg y no me funciona hay que modificar mas cosas...

<%
'pagina.asp
%>
<!--#include file="xelupload.asp"-->
<%
Dim oConn, rs, SQL
Dim objUpload, objFich, strNombre, strEdad
Dim maxtam, strNombreFichero

'nuestro tamaño máximo
maxtam = 30 * 2048

set objUpload = new xelUpload
objUpload.Upload()

'recuperamos los campos usuario y edad
strNombre = objUpload.Form("usuario")
strEdad = objUpload.Form("edad")

'si no ha subido ningún fichero, le avisamos
if objUpload.Ficheros.Count = 0 then
Response.Write("¡No has subido ningún fichero!")
else
'accedemos al fichero por su nombre en el formulario
set objFich = objUpload.Ficheros("imagen")
if objFich.Tamano <= maxtam and objFich.TipoContenido = "image/gif" then
'Es el fichero correcto, vamos a guardarlo en todas partes.

'Primero, en nuestro directorio actual con el nombre que tiene
objFich.Guardar Server.MapPath(".")

'Ahora, en el directorio upload, con la fecha de hoy como nombre
strNombreFichero = Day(Date) & Month(Date) & Year(Date)
objFich.GuardarComo strNombreFichero, Server.MapPath("upload")

'Ahora nos conectamos a una base de datos
set oConn = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")

'Nos conectamos con ODBC sin DSN, suponiendo que la base
'de datos está en este mismo directorio
oConn.Open "Driver={Microsoft Access Driver (*.mdb)};" _
& "DBQ=" & Server.MapPath("usuarios.mdb")
SQL = "SELECT * FROM usuarios"
'Abrimos el Recordset: el 0 es el cursor adForwardOnly
' y el 2 es el cerrojo adLockPessimistic
rs.Open SQL, oConn, 0, 2

'Añadimos un nuevo registro
rs.AddNew
rs.Fields("Nombre") = strNombre
rs.Fields("Edad") = strEdad
rs.Fields("NombreFichero") = objFich.Nombre

'Llamamos a GuardarBD pasandole el campo correspondiente!!!
objFich.GuardarBD rs.Fields("Imagen")

'Guardamos el nuevo registro
rs.Update

'y limpiamos todo que vienen los padres
rs.Close
set rs = nothing
oConn.Close
set oConn = nothing

'¡Todo correcto!
Response.Write "Se ha añadido el nuevo usuario <b>" & strNombre & "</b>, " _
& "con el fichero " & objFich.Nombre & " de tamaño " & objFich.Tamano & "."

'Limpiamos nuestro xelUpload y el fichero
set oFich = nothing
set objUpload = nothing

else
'No era un fichero válido
Response.Write("No es un fichero aceptable. ")
Response.Write("Tiene que ser un fichero GIF de menos de 15k.")
end if

end if
%>
  #4 (permalink)  
Antiguo 18/10/2007, 08:39
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 3 meses
Puntos: 98
Re: problema con codigo

En teoría el tipo debería ser: image/jpeg como ya lo indicaste, yo te sugeriría subir un jpg y hacer esto y ver que es lo que te está regresando la propiedad tipo contenido, después puedes modificar la condición:

Código:
'accedemos al fichero por su nombre en el formulario
set objFich = objUpload.Ficheros("imagen")
Response.Write("este es el contenido que hay que poner: " & objFich.TipoContenido)
Response.end()
Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #5 (permalink)  
Antiguo 18/10/2007, 11:16
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
Re: problema con codigo

por favor, no repitas temas. gracias
__________________
...___...
  #6 (permalink)  
Antiguo 18/10/2007, 12:40
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: problema con codigo

sabes que no comprendo lo que tengo que arreglar en el codigo modifique la cosa en jpeg y no paso nada me sigue saliendo error porque no es gif que sera....
alguien podria modificar el codigo por favor... seria mi salvacion..
muchas gracias
  #7 (permalink)  
Antiguo 18/10/2007, 12:56
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 3 meses
Puntos: 98
Re: problema con codigo

Vamos, al menos un poco de voluntad...qué es lo que modificaste que no te funcionó? ¿Hiciste lo que te recomendé?

Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #8 (permalink)  
Antiguo 18/10/2007, 13:06
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: problema con codigo

hola realmente no entiendo donde colocar lo que me escribiste pero yo reemplace eso que dice image/gif por image/jpeg y no me funciona igual me sigue saliendo el error que solo acepta gif.....
  #9 (permalink)  
Antiguo 18/10/2007, 13:13
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
Re: problema con codigo

Probá con estos mime types:

Código:
if objFich.Tamano <= maxtam and (objFich.TipoContenido = "image/jpg" OR objFich.TipoContenido = "image/jpeg" OR objFich.TipoContenido = "image/pjpeg") then
__________________
...___...
  #10 (permalink)  
Antiguo 19/10/2007, 05:19
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: problema con codigo

hola compañeros gracias a uds ya soluciones mi problema muchas gracias....
  #11 (permalink)  
Antiguo 19/10/2007, 11:34
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
Re: problema con codigo

bien, genial, pero... ¿cuál era el mime type correcto?
__________________
...___...
  #12 (permalink)  
Antiguo 19/10/2007, 14:54
 
Fecha de Ingreso: octubre-2007
Mensajes: 106
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: problema con codigo

if objFich.Tamano <= maxtam and (objFich.TipoContenido = "image/jpg" OR objFich.TipoContenido = "image/jpeg" OR objFich.TipoContenido = "image/pjpeg") then
__________________
este fue codigo que agrege y me funciono a la perfeccion....
  #13 (permalink)  
Antiguo 19/10/2007, 15:18
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
Re: problema con codigo

Ahhh... qué gil... estaba claro que era pjpeg... era la única opción nueva. Primero probaste con jpg, luego te dije que lo hagas con jpeg y no funcionaba.

Lo pregunto porque también tengo ese tipo de problemas o confusiones a la hora de usar el mime de los jpg... aunque siempre lo hice en PHP, nunca en ASP.
__________________
...___...
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 16:30.