a ver si me podeis ayudar. tengo una web con un gestor de contenido que lo que haces es agregar fichas de profesionales. en la ficha se guarda tambien una fotografía del mismo, esta es almacenada en la base de datos. Al hacer el alta del profesional no hay ningun problema, me introduce la foto en la BD, el problema lo tengo cuando quiero modificar los datos del profeosional, y no al modificar la foto, sino cualquiera de los campos de éste. Os pego el código del alta y de la modificación a ver si me podeis echar una mano....ah! os pego también el error que me da al intentar hacer la modificación !!!
RecibeAltaProfesionales2.asp (doy de alta el profesional en la BD)(esto funciona)
------------------------------------------------
<%
if not session("usuario") then
response.redirect("default.asp")
end if
%>
<!--#include file="constantes.asp" -->
<!--#include file="conexion.asp" -->
<!--#include file="adovbs.inc" -->
<% ' Insert.asp %>
<!--#include file="Loader.asp"-->
<%
Response.Buffer = True
' load object
Dim load
Set load = new Loader
' calling initialize method
load.initialize
' File binary data
Dim fileData
fileData = load.getFileData("file")
' File name
Dim fileName
fileName = LCase(load.getFileName("file"))
' File path
Dim filePath
filePath = load.getFilePath("file")
' File path complete
Dim filePathComplete
filePathComplete = load.getFilePathComplete("file")
' File size
Dim fileSize
fileSize = load.getFileSize("file")
' File size translated
Dim fileSizeTranslated
fileSizeTranslated = load.getFileSizeTranslated("file")
' Content Type
Dim contentType
contentType = load.getContentType("file")
' No. of Form elements
Dim countElements
countElements = load.Count
' Value of text input field "fname"
Dim nombre
nombre = load.getValue("nombre")
' Value of text input field "lname"
Dim apellidos
apellidos = load.getValue("apellidos")
' Value of text input field "profession"
Dim departamento
departamento = load.getValue("departamento")
Dim curriculum
curriculum = load.getValue("curriculum")
Dim socio
socio = load.getValue("socio")
Dim oficina
oficina = load.getValue("oficina")
Dim fax
fax = load.getValue("fax")
Dim email
email = load.getValue("email")
Dim telefono
telefono = load.getValue("telefono")
' destroying load object
Set load = Nothing
%>
<%
' Checking to make sure if file was uploaded
' Connection string
' Recordset object
Dim rs, oConn
conexion oConn
Set rs = Server.CreateObject("ADODB.Recordset")
rs.open "profesionales", oConn ,2,2
' Adding data
rs.AddNew
If fileSize > 0 Then
rs("File Name") = fileName
rs("File Size") = fileSize
If IsNull(fileData) Then
rs("File Data")= ""
else
rs("File Data").AppendChunk fileData
end if
'rs("File Data").AppendChunk fileData
rs("Content Type") = contentType
end if
rs("nombre") = nombre
rs("apellidos") = apellidos
rs("departamento") = departamento
if socio="false" then
rs("socio")=false
else
rs("socio")=true
end if
rs("telefono") = telefono
rs("oficina") = oficina
rs("fax") = fax
rs("email") = email
rs.Update
rs.Close
set rs=nothing
If Err.number <> 0 Then
'Response.Write "<br><font color=""red"">Algo fue mal..."
'Response.Write "</font>"
End If
response.Redirect("gprofesionales.asp")
%>
RecibeModProfesional.asp (esta página es la que me da error) -------------------------------------------------------------------------
<%if not session("usuario") then
response.redirect("default.asp")
end if
%>
<!--#include file="conexion.asp" -->
<!--#include file="constantes.asp" -->
<!--#include file="xelupload.asp"-->
<!--#include file="Loader.asp"-->
<%
Response.Buffer = True
' load object
Dim load
Set load = new Loader
' calling initialize method
load.initialize
' File binary data
Dim fileData
fileData = load.getFileData("file")
' File name
Dim fileName
fileName = LCase(load.getFileName("file"))
' File path
Dim filePath
filePath = load.getFilePath("file")
' File path complete
Dim filePathComplete
filePathComplete = load.getFilePathComplete("file")
' File size
Dim fileSize
fileSize = load.getFileSize("file")
' File size translated
Dim fileSizeTranslated
fileSizeTranslated = load.getFileSizeTranslated("file")
' Content Type
Dim contentType
contentType = load.getContentType("file")
' No. of Form elements
Dim countElements
countElements = load.Count
' Value of text input field "fname"
Dim nombre
nombre = load.getValue("nombre")
' Value of text input field "lname"
Dim apellidos
apellidos = load.getValue("apellidos")
' Value of text input field "profession"
Dim departamento
departamento = load.getValue("departamento")
Dim curriculum
curriculum = load.getValue("curriculum")
Dim socio
socio = load.getValue("socio")
Dim oficina
oficina = load.getValue("oficina")
Dim fax
fax = load.getValue("fax")
Dim email
email = load.getValue("email")
Dim telefono
telefono = load.getValue("telefono")
Dim check
check = load.getValue("check1")
Dim idp
idp = load.getValue("id_profesional")
if check="si" then
if filename <> "" then
'eliminamos la foto = actualizamos los campos a vacio
filename=""
filesize=0
contentType = null
end if
end if
' destroying load object
Set load = Nothing
%>
<%
' Checking to make sure if file was uploaded
' Connection string
' Recordset object
Dim rs, oConn
conexion oConn
Set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT * FROM profesionales WHERE id_profesional=" & idp
rs.open strSQL, oConn ,2,2,adCmdText
' Adding data
If fileSize > 0 Then
rs("File Name") = fileName
rs("File Size") = fileSize
If IsNull(fileData) Then
rs("File Data")= ""
else
rs("File Data").AppendChunk fileData
end if
rs("Content Type") = contentType
else
if check = "si" then
rs("File Name") = ""
rs("File Size") = 0
If IsNull(fileData) Then
rs("File Data")= ""
else
rs("File Data").AppendChunk fileData
end if
rs("File Data").AppendChunk null
rs("Content Type") = ""
end if
end if
rs("nombre") = nombre
rs("apellidos") = apellidos
rs("departamento") = departamento
if socio="2" then
rs("socio")=false
else
rs("socio")=true
end if
rs("telefono") = telefono
rs("oficina") = oficina
rs("fax") = fax
rs("email") = email
rs.Update
rs.Close
set rs=nothing
oConn.close
If Err.number <> 0 Then
'Response.Write "<br><font color=""red"">Algo fue mal..."
'Response.Write "</font>"
End If
response.Redirect("gprofesionales.asp")
%>
----------------------------------------------------------------
se me ha olvidado poner antes el tipo de error que me da...
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near the keyword 'File'.
/manager/RecibeModProfesionales.asp, line 134
la linea 134 es donde hago el update.
muchas gracias