
04/12/2004, 07:03
|
| | Fecha de Ingreso: junio-2003 Ubicación: Santiago de Compostela
Mensajes: 603
Antigüedad: 21 años, 11 meses Puntos: 0 | |
Hola Al Zuwaga:
El código que me has mandado funciona bien pero cuando desactivo el checkbox y por tanto el valor cambia a 0 no me cambia el valor en el campo verenabierto.
He revisado el código y el nombre del campo se corresponde con el de la base de datos, etc.... No veo el error. Podría echarme una mano a ver si ve el error.
He puesto una linea (en rojo) donde se ven los campos modificados y cuando el valor es 0 nunca aparece el campo modificado, en cambio cuando es 1 si aparece.
Gracias
Código:
<!--Incluimos el fichero de constantes-->
<!--#INCLUDE file="../../../ADOVBS.asp"-->
<%
nombreusuario=request.QueryString("nombreusuario")
ruta=request.QueryString("empresanombrefiscal")
'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("C:\Inetpub\vhosts\turofertas.com\httpdocs\images\ofertas\" & ruta & "\")
'Upload.Save("c:\obradoiroweb\obradoiroweb\turofertas\images\ofertas\" & ruta)
'Recogemos el valor de los campos fecha y denominación del formulario
fechapublicacionoferta=upload.form("fechapublicacionoferta")
fechavalidezoferta=upload.form("fechavalidezoferta")
denominacionoferta=upload.form("denominacionoferta")
destinooferta=upload.form("destinooferta")
verenabierto=upload.form("verenabierto")
If verenabierto <> "1" Then
verenabierto = "0"
insertar=true
end if
response.write "El valor de verenabierto es=" & verenabierto
'Recogemos el valor de la variable identificadoroferta. Se usa para determinar la oferta
' que vamos a modificar/ver
identificadoroferta=request.querystring("identificadoroferta")
'Esta función vuelve al formulario anterior para que el usuario pueda completar los datos erroneos
Function pulsarcompletardatos
response.write("<div align=""center""><br><strong><font face= ""Arial, Helvetica, sans-serif"" size=""3"" color=""#FB4C50"">" & "El/los campo/s arriba indicados no contienen datos o no son correctos. <p> <a href=""javascript:history.back()"">Pulse aquí para poder completar los datos correctamente</strong></font></a></div>")
end function
'Conectamos a la base de datos
set Conn= Server.CreateObject("ADODB.Connection")
Conn.ConnectionString = "DSN=clubviajesoferta.com.turofertas"
Conn.open
Set RS=Server.CreateObject("ADODB.Recordset")
RS.activeconnection=Conn
RS.source="ofertasmayoristas"
RS.Locktype = adLockOptimistic
RS.CursorType = adOpenDinamic
RS.open
'Localizamos el registro a modificar. Hay que convertir a número "identificadoroferta" porque identificarproducto es
'un campo autonumerico e identificadoroferta es una variable que contiene texto puesto que viene de un formulario
do while rs("identificadoroferta") <> cint(identificadoroferta)
rs.movenext
loop
'Con el registro a modificar localizado. Sacamos cual es la imagen que habia en la tabla antes de hacer cualquier modificacion
imagenantigua=rs("imagenoferta")
imagenantiguaturofertas=rs("imagenofertaexteriorturofertas")
response.write "<br>imagenantigua= " & imagenantigua
response.write "<br>imagenantiguaturofertas= " & imagenantiguaturofertas
'Variable de control para actualizar el registro
insertar=True
'Validamos los campos tipo fecha, denominación, verenabiero e imagen
IF NOT IsDate(fechapublicacionoferta) then
response.write("<br><br><br><div align=""center""><font face= ""Arial, Helvetica, sans-serif"" size=""2"" color=""#FB4C50"">" & "El campo <em>""Fecha Publicación""</em> contiene una fecha incorrecta </font></div>")
insertar=False
else
if year(cdate(fechapublicacionoferta)) < 1900 then
response.write("<br><div align=""center""><font face= ""Arial, Helvetica, sans-serif"" size=""2"" color=""#FB4C50"">" & "No se aceptan fechas inferiores al año 1900</font></div>")
insertar=false
end if
end if
if NOT IsDate(fechavalidezoferta) then
response.write("<br><div align=""center""><font face= ""Arial, Helvetica, sans-serif"" size=""2"" color=""#FB4C50"">" & "El campo <em>""Fecha Validación""</em> contiene una fecha incorrecta </font></div>")
insertar=False
else
if year(cdate(fechavalidezoferta)) < 1900 or cdate(fechavalidezoferta) < date then
response.write("<br><div align=""center""><font face= ""Arial, Helvetica, sans-serif"" size=""2"" color=""#FB4C50"">" & "No se aceptan fechas inferiores al año 1900 o el valor del campo ""Fecha Validez"" es menor que el campo ""Fecha Publicación"" </font></div>")
insertar=false
end if
end if
if denominacionoferta = "" then
response.write("<div align=""center""><font face= ""Arial, Helvetica, sans-serif"" size=""2"" color=""#FB4C50"">" & "El campo <em>""Denominación""</em> está vacio </font></div>")
insertar=false
end if
if insertar=false then
pulsarcompletardatos
end if
For each Parametro in upload.Form
response.write("<br><br>Campo: " & (parametro.name) & ", Contenido: " & parametro.value) & "<br>"
rs(parametro.name)=Ucase(parametro.value)
Next
'Este For-Next hace que el fichero se suba al servidor
ruta="../../images/ofertas/" & ruta & "/"
set FSO=CreateObject("Scripting.FileSystemObject")
For Each File in Upload.Files
'Este IF comprueba que el tipo de imagen sea conocido
If File.ImageType = "UNKNOWN" Then
response.write("<div align=""center""><br><strong><font face= ""Arial, Helvetica, sans-serif"" size=""3"" color=""#FB4C50"">" & "La oferta no se ha añadido a la base de datos. <br>No es un tipo de imagen correcto. <br> Debe seleccionar una imagen mediante el boton ""Examinar"". <p> <a href=""javascript:history.back()"">Pulse aquí para poder completar los datos correctamente</strong></font></a></div>")
insertar=False
Response.End
End If
'Como el tipo de archivo es conocido añadimos el registro con la ruta de la imagen
rs(File.name)=ruta & (File.filename)
'Ya que hemos añadido la ruta, también añadimos el ancho y el alto de la imagen
select case (file.name)
case "imagenoferta"
imagennueva=ruta & (File.filename)
rs("imagenofertaancho")=file.imagewidth
rs("imagenofertaalto")=file.imageheight
'Este IF comprueba si las imagenes del registro que se esta modificando son diferentes.
'Si es así, añadimos el nuevo registro, despues construimos la ruta del fichero que
'vamos a borrar, luego añadimos el alto y ancho de la nueva imagen y luego borramos el fichero antiguo
if imagenantigua <> imagennueva then
response.write "<br>imagennueva= " & imagennueva
response.write "<br>las imagenes comparadas: imagenantigua e imagennueva son diferentes"
rs(File.name)=ruta & (File.filename)
cadenaorigen=imagenantigua
cadenabuscar="../../"
'cadenacambiar="c:/obradoiroweb/obradoiroweb/Turofertas/"
cadenacambiar="C:\Inetpub\vhosts\turofertas.com\httpdocs\"
rutaimagenaborrar=replace(cadenaorigen,cadenabuscar,cadenacambiar,1,1,1)
response.write "<br> esta es la imagen que tiene que borrar: " & imagenantigua
if (file.name)="imagenoferta" then
rs("imagenofertaancho")=file.imagewidth
rs("imagenofertaalto")=file.imageheight
end if
set file=fso.GetFile(rutaimagenaborrar)
file.delete
end if
case "imagenofertaexteriorturofertas"
imagennuevaturofertas=ruta & (File.filename)
rs("imagenofertaexteriorturofertasancho")=file.imagewidth
rs("imagenofertaexteriorturofertasalto")=file.imageheight
'Este IF comprueba si las imagenes del registro que se esta modificando son diferentes.
'Si es así, añadimos el nuevo registro, despues construimos la ruta del fichero que
'vamos a borrar, luego añadimos el alto y ancho de la nueva imagen y luego borramos el fichero antiguo
if imagenantiguaturofertas <> imagennuevaturofertas then
response.write "<br><br><br><br>imagennuevaturofertas= " & imagennuevaturofertas
response.write "<br>las imagenes comparadas: imagenantiguaturofertas e imagennuevaturofertas son diferentes"
rs(File.name)=ruta & (File.filename)
cadenaorigen1=imagenantiguaturofertas
cadenabuscar1="../../"
'cadenacambiar="c:/obradoiroweb/obradoiroweb/Turofertas/"
cadenacambiar1="C:\Inetpub\vhosts\turofertas.com\httpdocs\"
rutaimagenaborrar1=replace(cadenaorigen1,cadenabuscar1,cadenacambiar1,1,1,1)
response.write "<br> esta es la imagen que tiene que borrar: " & imagenantiguaturofertas
if (file.name)="imagenofertaexteriorturofertas" then
rs("imagenofertaexteriorturofertasancho")=file.imagewidth
rs("imagenofertaexteriorturofertasalto")=file.imageheight
end if
response.write "<br>rutaimagenaborrar1= " & rutaimagenaborrar1
set file=fso.GetFile(rutaimagenaborrar1)
file.delete
end if
end select
Next
rs.update
'Con este IF se muestra el mensaje de que la oferta ha sido actualizada correctamente
if insertar=true then
response.write("<div align=""center""><br><strong><font face= ""Arial, Helvetica, sans-serif"" size=""3"" color=""#FB4C50"">" & "<br><br><br><br>La oferta ha sido modificada en nuestra base de datos.</strong></font></a></div>")%>
<br>
<br>
<A HREF="../../../modulo_gestion.asp?nombreusuario=<%=nombreusuario%>" target="_parent">Menu principal </A> ** <A HREF="modificar_ver_ofertas.asp?nombreusuario=<%=nombreusuario%>" target="_parent">Modificar/Ver</A>
<%end if
rs.close
conn.close
%>
<body leftmargin="5" topmargin="5" marginwidth="5" marginheight="5">
</body>
|