Tengo un pequeño problemilla por el cual no me funciona una página hecha en asp.
Esta página añade un registro a una DB. El problemilla es que aunque el campo de tipo File "imagenproducto" este vacio o lleno nunca me añade el registro. Esto sucede desde que cambie los request.form por request.upload del componente aspuload, puesto que según deduzco de sus instrucciones se llevan bastante mal.
Obviamente si anulo las sentencias de validación del campo "imagenproducto" y la variable "imagenproducto" la pagina funciona perfectamente. Lo que quiero es obligar al usuario a que no deje la fotografia del producto sin subir al servidor.
Les paso el código para ver si le pueden echar un vistazo porque yo no soy capaz de ver el error. Solo paso el código de la página que evalua el formulario puesto que el formulario pienso que no es necesario.
Les resalto en rojo el lugar donde está el problema.
Código:
¿Por cierto alguien puede indicarme porque no me funciona la sentencia LCASE?<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <% response.Expires=0 Response.AddHeader "PRAGMA", "NO-CACHE" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Administrar Productos</title> </head> <!--#INCLUDE file="../../../adovbs.asp"--> <% 'Aquí se usa la coleccion upload.form debido a que el componente AspUplad no 'se lleva bien con el request.form del ASP Set Upload = Server.CreateObject("Persits.Upload.1") 'Carpeta donde se subirán los ficheros Upload.Save(server.mappath("\images\prueba")) %> <%'Para conexión a dsn arsys con ACCESS set Conn= Server.CreateObject("ADODB.Connection") Conn.ConnectionString = "DSN=clubviajesoferta.com.amancio" Conn.open Set RS=Server.CreateObject("ADODB.Recordset") rs.activeconnection=conn rs.source="productos" rs.Locktype = adLockOptimistic rs.CursorType = adOpenDinamic rs.open 'Termina aquí la conexion a dsn arsys con ACCESS %> <% 'Recupera las variables del formulario referenciaproducto= Trim(upload.Form("referenciaproducto")) categoriaproducto= Trim(upload.form("categoriaproducto")) nombreproducto= Trim(upload.Form("nombreproducto")) marcaproducto= Trim(upload.form("marcaproducto")) precioproducto= Trim(upload.Form("precioproducto")) tallajeproducto= Trim(upload.form("tallajeproducto")) imagenproducto= Trim(upload.form("imagenproducto")) descbrevproducto= Trim(upload.form("descbrevproducto")) descripcionproducto= Trim(upload.form("descripcionproducto")) temporadaproducto= Trim(upload.form("temporadaproducto")) estadoproducto= Trim(upload.form("estadoproducto")) insertar="True" 'Asignamos los valores predeterminados if referenciaproducto= "" then response.write("el campo ""referencia"" está vacio <br>") insertar="False" end if if categoriaproducto= "" then response.write("el campo ""categoría"" está vacio <br>") insertar="False" end if if nombreproducto= "" then response.write("el campo ""nombre"" está vacio <br>") insertar="False" end if if marcaproducto= "" then response.write("el campo ""marca"" está vacio <br>") insertar="False" end if if precioproducto= "" then response.write("el campo ""producto"" está vacio <br>") insertar="False" end if if tallajeproducto= "" then response.write("el campo ""tallaje"" está vacio <br>") insertar="False" end if if imagenproducto= "" then response.write("el campo ""imagen"" está vacio <br>") insertar="False" end if if descbrevproducto= "" then response.write("el campo ""descripción breve"" está vacio <br>") insertar="False" end if if descripcionproducto= "" then response.write("el campo ""descripción completa"" está vacio <br>") insertar="False" end if if temporadaproducto= "" then response.write("el campo ""temporada"" está vacio <br>") insertar="False" end if if estadoproducto= "" then response.write("el campo ""estado"" está vacio <br>") insertar="False" end if 'Añadimos el registro rs.addnew For each Parametro in upload.Form 'Para ver los nombres de los campos del formulario 'response.write(parametro.name & ", <br>") 'Aquí recogemos el valor del campo del formulario porque las variables solo 'se usan para validar el formulario, debido a que no hay forma de recoger 'los valores que hay en las variables para meterlas en la base de datos LCase(Parametro.value) rs(parametro.name)=(parametro.value) Next 'Este For-Next hace que el fichero se suba al servidor ruta="../images/" For Each File in Upload.Files rs(File.name)=ruta & (File.filename) 'Response.Write File.Name & "= " & File.Path & " (" & File.Size &" bytes)<BR>" Next If Insertar then rs.Update response.write("El producto se ha añadido correctamente a la base de datos <br>") else rs.cancelupdate response.write("<br>El producto no se ha añadido al a base de datos puesto que el/los campo/s arriba indicados no contienen datos") End if rs.close conn.close %> <body> </body> </html>
No da error pero tampoco convierte el nombre de los ficheros a mínusculas.
Gracias a todos de antemano. No se que haría sin su ayuda