Ver Mensaje Individual
  #5 (permalink)  
Antiguo 21/02/2005, 06:39
hemiliano
 
Fecha de Ingreso: abril-2004
Mensajes: 260
Antigüedad: 21 años
Puntos: 1
XelUpload!!!!!!!!!!!

Bueno, ya me estoy enojando con este XelUpload.
El código que tengo en mi página es el siguiente:
Código:
 
Dim oConn, rs, SQL
Dim objUpload, objFich, strNombre, strEdad
Dim maxtam, strNombreFichero

'nuestro tamaño máximo
maxtam = 15 * 1024

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
Y al ajecutarlo, me muestra el siguiente error:
Código:
Microsoft VBScript runtime error '800a0046' 

Permission denied 

/proyecto/admin/xelupload.asp, line 170
Esa linea 170 de xelupload tiene lo siguiente:
Código:
 
Public Sub Guardar(ruta)
Dim oFSO, oFich
Dim i

if ruta = "" or Nombre = "" then Exit Sub
if Mid(ruta, Len(ruta)) <> "\" then		'"	
	'añado la ultima barra a la ruta
	ruta = ruta & "\" 						'"
end if

set oFSO = Server.CreateObject("Scripting.FileSystemObject")
if not oFSO.FolderExists(ruta) then Exit Sub
set oFich = oFSO.CreateTextFile(ruta & Nombre, true)

for i = 1 to LenB(Datos)
	oFich.Write Chr(AscB(MidB(Datos, i, 1)))
next 	

oFich.Close
set oFSO = nothing
End Sub
Hablé con el servidor y me dijeron que la carpeta tiene todos los permisos dados y todo. Entonces, QUE PASA???
Hay algo más en el servidor?, algo en el código??, que onda?.
Esto ya me tiene loco, hice 10.000 pruebas y nada funciona.
Les agradecería darme una mano.

Muchas gracias.
__________________
:serio: :adios:

Última edición por hemiliano; 21/02/2005 a las 06:42