Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    upload di dati con access

    Salve a tutti, a chiunque mi risolva questo enigma offrirò un fiume di birra...
    permetto che nella programmazione sono un caso disperato.
    Oramai è moltissimo che sto provando di terminare questo sito, ora vi spiego il mio piccolo ma grande problema.
    Ho un upload funzionane che estrae le voci da un database access in una select per determinare il nome della cartella di destinazione, fin qui tutto ok, il problema è che una volta terminato l'upload vorrei che tale voce precedentemente selezionata dal select venga cancellata dal database
    questa è la pagina del caricamento dei file:

    invio-del-file.asp
    codice:
    <!-- #include file="protec.asp" -->
    <script language="javascript">
     <!--
      function Modulo() {
         // Variabili associate ai campi del modulo
         var Invio_del_flie = document.modulo.Invio_del_flie.value;
    	 var FILE1 = document.modulo.FILE1.value;
    
    
                   //Effettua il controllo sul campo cap
           if ((Invio_del_flie   == "") || (Invio_del_flie   == "undefined")) {
               alert("Devi selezionare un prodotto per poter continuare.");
               document.modulo.Invio_del_flie.focus();
               }
                    
               //Effettua il controllo sul campo cap
            else if ((FILE1  == "") || (FILE1  == "undefined")) {
               alert("Devi inserire almeno un prodotto per effettuare l'upload.");
               document.modulo.FILE1.focus();
               }
     //INVIA IL MODULO
            else {
               document.modulo.action = "esito-upload.asp";
               document.modulo.submit();
            }
      }
     //-->
    </script> 
    			
    <%
    Set Conn = Server.CreateObject("ADODB.Connection")
    strConn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("mdb-database/Ordini.mdb") 
    Conn.Open strConn 
    numeroRecord=Session("ID")
    sql = "SELECT * FROM Ordini_file WHERE Id="&numeroRecord
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3
    %>	
    
    
    	
    			
    			
    <FORM METHOD="POST" ENCTYPE="multipart/form-data" name="modulo"> 
    																		<strong><span class="style13">Seleziona il prodotto: <span class="style11">*</span></span></strong><br>
    		
    <select name="Invio_del_flie" style="width: 577px">
    
    
    <option value="">Seleziona un prodotto</option>
    
    
    		<%
    		do while not rs.eof
    		response.write "<option value='" & rs("ID_file")& "'>"
    							response.write "Numero ordine"
    							response.write " "
    							response.write rs("ID_file")
    							response.write "  -  "
    							response.write "Prodotto"
    							response.write " "
    							response.write rs("Ordine")
    							response.write "  -  "
    							response.write "Data ordine"
    							response.write " "
    							response.write rs("data")
    							response.write "</option>"
    							rs.movenext
    							loop
    							
    							rs.Close	
    set rs = Nothing
    set conn = Nothing
    
    
    							%>
    
    
    			</select><br>
    		<br>
    		<strong><span class="style12">File FRONTE: <span class="style11">*</span></span></strong><br>
    		<INPUT TYPE="FILE" SIZE="40" NAME="FILE1"><br>
    		
    		<br>
    		<strong><span class="style12">File RETRO:</span></strong><BR> <INPUT TYPE="FILE" SIZE="40" NAME="FILE2"> <br>
    		<br>
    		<span class="style13"><strong>N.B. specificare il fronte è il retro rinominando il file.<br>
    		</strong></span><br>
    	<BR>
    		<input type="button" value="invia" onClick="Modulo()">
    </FORM>

    questa è la pagina dell'esito:
    esito-upload.asp
    codice:
    <!-- #include file="protec.asp" -->
    <%
    Set Conn = Server.CreateObject("ADODB.Connection")
    strConn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("mdb-database/Ordini.mdb") 
    Conn.Open strConn 
    numeroRecord=Session("ID")
    sql = "SELECT * FROM Ordini_file WHERE Id="&numeroRecord
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3
    %>	
    
    
    			
    					<p>
    
    
    <%
    
    
    server.ScriptTimeout=60000
    	Set Upload = Server.CreateObject("Persits.Upload")
    
    
    	' ATTENZIONE, PORRE IL LIMITE
    	Upload.SetMaxSize 10485760, True
    
    
    	' SALVO IN MEMORIA
    	Upload.Save
    
    
    	' cartella indicata dal visitatore, attenzione, sconsigliato, usare preferibilmente la soluzione *NB*
    	Invio_del_flie = Upload.Form("Invio_del_flie")
    	Invio_del_flie = Upload.Form("Invio_del_flie")
    	
    	
    	' *NB* cartella specificata a scelta del webmaster 
    	'Invio_del_flie = "upload"
    	'Invio_del_flie = "upload"
    
    
    	' per evitre uso malevolo, replace dei percorsi a salire ".."
    	fronte = Replace(Invio_del_flie, "..", "" )
    	percorso = Server.MapPath("/mdb-database/Invio_del_flie")
    ' per evitre uso malevolo, replace dei percorsi a salire ".."
    	retro = Replace(Invio_del_flie, "..", "" )
    	percorso = Server.MapPath("/mdb-database/Invio_del_flie")
    
    
    	' Imposto percorso facilitato
    	'Path = "d:\inetpub\webs\demo-wincom\mdb-database\Invio_del_flie\" & Invio_del_flie
    	Path = percorso & "/" & Invio_del_flie
    
    
    	' Create path, ignore "already exists" error
    	Upload.CreateDirectory Path, True
    
    
    
    
    	
    	For Each File in Upload.Files
    		File.SaveAs Path & "\" & File.FileName
    
    
    		Response.Write "Ordine numero <b>" & fronte & "</b>. - Nome del file </b>" & File.filename & "</b> - inviato correttamente<BR>"
    	
    		
    
    
    Next
    %>
    
    
    <%
    rs.delete
    
    
    rs.Close
    set rs = Nothing
    conn.Close
    set conn = Nothing
    %>

    il file protec.asp contiene
    codice:
    <%
    'L'utente è passato per una fase di login?
    if	(Session("Autenticato")<>"OK") then
    	'Se no lo mandiamo ad autenticarsi
    	Response.Redirect "login.asp?errore="&Server.URLEncode("Per accedere a questa pagina bisogna effettuare il login, se non è registrato può farlo gratuitamente.")&"&paginaOriginale="&Request.ServerVariables("SCRIPT_NAME")
    else
    	'Se si, ha un livello appropriato?
    	if Session("livelloUtente") < livelloPagina then
    		Session.Abandon
    		Response.Redirect "login.asp?errore="&Server.URLEncode("La pagina richiesta necessita di un livello più alto di sicurezza, prego autenticarsi come altro utente abilitato")&"&paginaOriginale="&Request.ServerVariables("SCRIPT_NAME")
    	end if
    end if
    %>
    grazie anticipatamente a tutti

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    A upload completato fai un delete nome cartella
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    nella pagina esito-upload.asp
    codice:
    <%rs.delete
    rs.Close
    set rs =Nothing
    conn.Close
    set conn =Nothing
    %>


    però mi va a eliminare la prima voce che è presente nella select e non quella selezionata

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Enrico precisiamo subito che non ho molta pazienza e se cerchi un tutor forse non sono la persona più adatta, pertanto se le tue conoscenze sono il copia/incolla credo sia meglio che attendi altri utenti del forum.
    Detto questo ribadisco che una volta eseguito l'upload di seguito fai un delete (query) sul database indicando nella where il nome della cartella da eliminare
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    ciao Andrea, prima di tutto grazie per la tua risposta.
    diciamo che non cerco un tutor, mi occorrere soltanto un consiglio di come fare per comunicare l'esatta riga da eliminare al database.
    poi a livello di programmazione più info ho e meglio è, in alternativo mi scervellerò io.

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Posta il codice che esegue upload e il nome della tabella che contiene le cartelle
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    questo qui e l'esito dell'upload:
    codice:
    <%
    
    
    server.ScriptTimeout=60000
        Set Upload = Server.CreateObject("Persits.Upload")
    
    
        ' ATTENZIONE, PORRE IL LIMITE
        Upload.SetMaxSize 10485760, True
    
    
        ' SALVO IN MEMORIA
        Upload.Save
    
    
        ' cartella indicata dal visitatore, attenzione, sconsigliato, usare preferibilmente la soluzione *NB*
        Invio_del_flie = Upload.Form("Invio_del_flie")
        Invio_del_flie = Upload.Form("Invio_del_flie")
        
        
        ' *NB* cartella specificata a scelta del webmaster 
        'Invio_del_flie = "upload"
        'Invio_del_flie = "upload"
    
    
        ' per evitre uso malevolo, replace dei percorsi a salire ".."
        fronte = Replace(Invio_del_flie, "..", "" )
        percorso = Server.MapPath("/mdb-database/Invio_del_flie")
    ' per evitre uso malevolo, replace dei percorsi a salire ".."
        retro = Replace(Invio_del_flie, "..", "" )
        percorso = Server.MapPath("/mdb-database/Invio_del_flie")
    
    
        ' Imposto percorso facilitato
        'Path = "d:\inetpub\webs\demo-wincom\mdb-database\Invio_del_flie\" & Invio_del_flie
        Path = percorso & "/" & Invio_del_flie
    
    
        ' Create path, ignore "already exists" error
        Upload.CreateDirectory Path, True
    
    
    
    
        
        For Each File in Upload.Files
            File.SaveAs Path & "\" & File.FileName
    
    
            Response.Write "Ordine numero <b>" & fronte & "</b>. - Nome del file </b>" & File.filename & "</b> - inviato correttamente<BR>"
        
    
    
    Next
    %>


    invece questo qui è la connessione al database:
    codice:
    <%
    Set Conn = Server.CreateObject("ADODB.Connection")
    strConn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("mdb-database/Ordini.mdb") 
    Conn.Open strConn 
    numeroRecord=Session("ID")
    sql = "SELECT * FROM Ordini_file WHERE Id="&numeroRecord
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3
    %>

  8. #8
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Metti questa riga dopo il next
    conn.execute("delete from Ordini where id = " & Invio_del_file)
    A) Invio_file_file credo sia id del record ordini, se non è cosi specifica a cosa si riferisce
    B) Nella pagina del upload dovrà esserci la connessione al db
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  9. #9
    mi stampa questo
    codice:
    Microsoft JET Database Engineerror '80040e14'Syntax error (missing operator) in query expression 'id ='.
    /esito-upload.asp, line 139

  10. #10
    la riga coincide a:

    conn.execute("delete from Ordini where id = " & Invio_del_file)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.