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

Problemas xelupload

Estas en el tema de Problemas xelupload en el foro de ASP Clásico en Foros del Web. Buenas, Tengo dos campos files llamados imagen , imagen 2 y imagen 3 el problema esta cunado por ejemplo envio una imagen por el campo ...
  #1 (permalink)  
Antiguo 16/01/2008, 02:54
 
Fecha de Ingreso: noviembre-2007
Mensajes: 471
Antigüedad: 16 años, 7 meses
Puntos: 2
Problemas xelupload

Buenas,
Tengo dos campos files llamados imagen , imagen 2 y imagen 3 el problema esta cunado por ejemplo envio una imagen por el campo imagen 2 y en el campo imagen 1 no pongo nada me pone este error.
Error Type:
Microsoft VBScript runtime (0x800A01A8)
Object required: 'objUpload.Ficheros(...)'

esto es porque en el primer campo (imagen) no pongo nada.

Mi codigo

<%
'pagina.asp
%>
<!--#include file="xelupload.asp"-->
<%

if session("Usuario")="" then
response.write "No validado"
else
response.write session("usuario")
end if

'Dim com, rs, SQL
'Dim objUpload, objFich, strNombre, strEdad
'Dim maxtam, strNombreFichero

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

set objUpload = new xelUpload
'recibir formulario
objUpload.Upload()

'recuperamos los campos usuario y edad
formato = objupload.form("formato")
fechale = Day(Date) & Month(Date) & Year(Date)
timela = hour(time) & minute(time) & second(time)
val=fechale&""&timela&""&usua
val2=fechale&""&timela&""&usua&""&"b"
val3=fechale&""&timela&""&usua&""&"c"
val4=fechale&""&timela&""&usua&""&"d"
val5=fechale&""&timela&""&usua&""&"e"
val6=fechale&""&timela&""&usua&""&"f"





'si no ha subido ningún fichero, le avisamos
if objUpload.Ficheros.Count = 0 then
Response.Write("¡No has subido ningún fichero!")
Response.Redirect"anuncio.asp?ima=Debes Insertar almenos una imagen"
response.write(val)
else
if objUpload.Ficheros.Count = 1 then
set objFich = objUpload.Ficheros("imagen")

if objFich.Tamano <= maxtam then

primerfuchero = val & formato
objFich.GuardarComo primerfuchero, Server.MapPath("..\web\imagenes")

Set com = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")

'com.ConnectionString = "DSN=registrate"
'com.Open
com.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=C:\Inetpub\wwwroot\web\registrate.mdb"

SQL = "SELECT * FROM anuncio"

rs.Open SQL, com, 0, 2


rs.AddNew
rs.Fields("Imagen") = primerfuchero




rs.Update


rs.Close
set rs = nothing
com.Close
set com = nothing






else
if objUpload.Ficheros.Count = 2 then
set objFich = objUpload.Ficheros("imagen")
set objFich2 = objUpload.Ficheros("imagen2")



if objFich.Tamano <= maxtam then

primerfuchero = val & formato
primerfuchero = val & formato
objFich.GuardarComo primerfuchero, Server.MapPath("..\web\imagenes")
segundofuchero = val2 & formato
objFich2.GuardarComo segundofuchero, Server.MapPath("..\web\imagenes")
Set com = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")

'com.ConnectionString = "DSN=registrate"
'com.Open
com.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=C:\Inetpub\wwwroot\web\registrate.mdb"

SQL = "SELECT * FROM anuncio"

rs.Open SQL, com, 0, 2


rs.AddNew

rs.Fields("Imagen") = primerfuchero
rs.Fields("Imagen2") = segundofuchero




rs.Update


rs.Close
set rs = nothing
com.Close
set com = nothing







else


set objFich = objUpload.Ficheros("imagen")
set objFich2 = objUpload.Ficheros("imagen2")
set objFich3 = objUpload.Ficheros("imagen3")



if objFich.Tamano <= maxtam then

primerfuchero = val & formato
objFich.GuardarComo primerfuchero, Server.MapPath("..\web\imagenes")
primerfuchero = val & formato
objFich.GuardarComo primerfuchero, Server.MapPath("..\web\imagenes")
segundofuchero = val2 & formato
objFich2.GuardarComo segundofuchero, Server.MapPath("..\web\imagenes")
tercerfichero = val3 & formato
objFich3.GuardarComo tercerfichero, Server.MapPath("..\web\imagenes")

Set com = Server.CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")

'com.ConnectionString = "DSN=registrate"
'com.Open
com.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=C:\Inetpub\wwwroot\web\registrate.mdb"

SQL = "SELECT * FROM anuncio"

rs.Open SQL, com, 0, 2


rs.AddNew
rs.Fields("Imagen") = primerfuchero
rs.Fields("Imagen2") = segundofuchero
rs.Fields("Imagen3") = tercerfichero



rs.Update


rs.Close
set rs = nothing
com.Close
set com = nothing









end if
end if
end if
end if
end if
end if




%>

Saludos
  #2 (permalink)  
Antiguo 16/01/2008, 16:43
areslomas
Invitado
 
Mensajes: n/a
Puntos:
Re: Problemas xelupload

cual es la linea del error?
yo me he vuelto loco con xelupload, pero despues de un tiempo se le encuentra la vuelta al codigo
  #3 (permalink)  
Antiguo 17/01/2008, 07:05
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 5 meses
Puntos: 126
Re: Problemas xelupload

Prueba a controlarlo con JS

En tu form de envio

Código PHP:
 <form name="f" action="./envio.asp" method="post" enctype="multipart/form-data"
onsubmit="return validar(this);"
Función JS

Código PHP:
 function validar(v) {

//primera imagen
var document.getElementById('img1').value;
if (
a.length == 0)
     {
alert("el campo está vacío");
return (
false);
      }
else if (
a.indexOf('.jpg',0)== -|| a.indexOf('.gif',0)== -1){
alert("la extension no es correcta")
return (
false);
     }

//segunda imagen
var inicio "false";
var 
document.getElementById('img2').value;
var 
extension b.substring(c.length-4,b.length)
if (
extension == ".jpg" || extension == ".gif" || == "")
     {
inicio "true";
     }
else if (
b.indexOf('.jpg',0)== -|| b.indexOf('.gif',0)== -1){
alert("la extension no es correcta")
return (
false);
    }
else
return (
true);
    }

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
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 21:50.