Ciao a tutti,
ho un problema su una pagina per fare l'inserimento di dati su db sql e l'upload di un file sul server.
Questa è la mia situazione:
- ho un db sql contenente 3 tabelle: principale (tabella temporanea), tag e file
- ho una pagina contenente campi dati e un campo form che nseriscono i dati nella tabella temporanea "principale"
- ho una pagina di conferma che deve eseguire le seguenti operazioni:
1. prendere dalla tab principale i campi file_inviato,tipo, descrizione,
utente, proprietario e data_inserimento ed inserirle nella tab file dove
viene creato anche un contatore automatico (ID_File)
2. recuperare l'ultimo ID_File dalla tab file
3. recuperare dalla tab principale i valori dei campi tag (tag1, tag2,
tag3....tag10)
4. inserire ID_File recuperato ed i valori tag recuperati nella tab tag inserendo per ogni tag recuperato un record con l'ID_File recuperato. ES: se ho un record dove ID_File=100, tag1=a, tag2=b, tag3=c, nella tab tag avrò 3 record:
ID_fIle tag
100 a
100 b
100 c
il mio problema sta proprio in questo punto. Dopo che vengono inseriti i dati, il punto 1 viene eseguito correttamente, ma non riesco a far passare i valori dei campi tag e l'ID_file nella tab tag.
Qui sotto vi riporto il codice della pagina che dovrebbe eseguire tutte queste operazioni. In grassetto vi evidenzio la parte che dovrebbe prelevare i valori ID_File e tag ed inserirle nella tabella.
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%'recupera il valore del cookie
dim Valore
Valore=request.cookies("imagelibrary")("username")
'response.write(Valore) '**********************
dim rs_principale
Set rs_principale = Server.CreateObject("ADODB.Recordset")
rs_principale.ActiveConnection = MM_conmedia_STRING
rs_principale.Source = "SELECT * FROM medialibrary.dbo.principale"
rs_principale.CursorType = 0
rs_principale.CursorLocation = 2
rs_principale.LockType = 1
rs_principale.Open()
dim varfile
dim vartipo
dim vardescr
dim varpropr
dim vartag
dim varutente
dim vardatains
dim pos 'var posizione del "/"
dim rs
dim var_id
'varfile=cstr(rs_principale.fields.item("file_inse rito"))
varfile=rs_principale.fields.item("file_inserito")
pos=1
do
if instr(pos,varfile,"/")=0 then
varfile=mid(varfile, pos, len(varfile))
exit do
else
pos=instr(pos,varfile,"/")+1
end if
loop until pos=len(varfile)
vartipo=rs_principale.fields.item("tipo")
vardescr=rs_principale.fields.item("descrizione")
varpropr=rs_principale.fields.item("proprietario")
vardatains=rs_principale.fields.item("datainserime nto")
varutente=Valore
' Setting variables
Dim con, sql_insert, data_source, i
data_source = "dsn=medialibrary;uid=helptecadmin;pwd=helptec a;"
sql_insert = "insert into medialibrary.dbo.[file] (file_inviato, tipo, utente, proprietario, data_inserimento, descrizione) values " & _
"('" & varfile & "','" & vartipo & "','" & varutente & "','" & varpropr & "','" & vardatains & "','" & vardescr & "')"
' Creating the Connection Object and opening the database
Set con = Server.CreateObject("ADODB.Connection")
con.Open MM_conmedia_STRING
' Executing the sql insertion code
con.Execute sql_insert
'recupera l'ID dell'ultimo file salvato
Set rs = Server.CreateObject("ADODB.Recordset")
rs.ActiveConnection = MM_conmedia_STRING
rs.Source = "SELECT ID_File FROM medialibrary.dbo.[file] ORDER BY ID_File DESC"
rs.CursorType = 0
rs.CursorLocation = 2
rs.LockType = 1
rs.Open()
rs_numRows = 0
var_id=rs.fields.item("ID_File")
'response.Write(var_id) '**************************
for i = 1 to 10
vartag=rs_principale.fields.item("tag" & i)
if vartag<>"" then
'inserisci valori tag
sql_insert="insert into medialibrary.dbo.tag (ID_file, tag) values (" & var_id & ",'" & vartag & "')"
con.Execute sql_insert
end if
'response.Write(vartag) '***************
next
' Done. Now Close the connection
con.Close
Set con = Nothing
'response.Write(Valore)
'response.Write(varfile)
'response.Write(vartipo)
'response.Write(vardescr)
'response.Write(vartag)
'response.Write(varpropr)
'response.Write(vardatains)
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
[.....]
</body>
</html>
<%
rs_principale.Close()
Set rs_principale = Nothing
%>
<%
rs.Close()
Set rs = Nothing
%>
Grazie mille in anticipo per l'aiuto,
Alex

Rispondi quotando