Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di ISE
    Registrato dal
    Sep 2003
    Messaggi
    1,314

    Cancellare dal db e dal server

    Ragazzi vorrie fare in modo che dal pannello principale il cliente possa cancellare i file presenti sul db.
    Prima utilizzavo uno script che mi cancellava solo i record presenti sul db, ma vorrei fare in modo che mi cancelli dal server anche i file uplodati.

    Come posso fare?

    Non ne so molto di asp ed avevo preparato questo:

    codice:
    <%
    cod = Request.Querystring("cod")
    Dim objFSO
    
    Set Con = Server.CreateObject( "ADODB.Connection" )
    Con.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&SERVER.MAPPATH("/mdb-database/sicilia.mdb")
    
    SQL="DELETE FROM TabellaAgrigento WHERE ID="&cod
    
    
    
    SQL="SELECT blob FROM TabellaAgrigento"
    
    Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
    objFSO.DeleteFile(server.mappath("/public/"&blob))
    
    Set objFSO = Nothing
    Con.Execute(SQL)
    Con.close
    %>
    Nel db la voce BLOB contiene il nome del file uplodato.

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Devi passare il nome del file.
    Recuperandolo dal db.

    Roby

  3. #3
    Utente di HTML.it L'avatar di ISE
    Registrato dal
    Sep 2003
    Messaggi
    1,314
    Lo avevo immaginato, ma come faccio arecuperare il nome?
    Avevo inserito
    codice:
    SQL="SELECT blob FROM TabellaAgrigento"
    per recuperare il nome, ma ho notato che non funziona e poi avevo scritto
    codice:
    objFSO.DeleteFile(server.mappath("/public/"&blob))
    per cancellare il file che si trova all'interno del record BLOB del db.

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Se non apri il recordset...
    Apri rs e poi

    rs("blob") conterrà il nome del file.

    Roby

  5. #5
    Utente di HTML.it L'avatar di ISE
    Registrato dal
    Sep 2003
    Messaggi
    1,314
    codice:
    <%
    cod = Request.Querystring("cod")
    Dim objFSO
    
    Set Con = Server.CreateObject( "ADODB.Connection" )
    Con.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&SERVER.MAPPATH("/mdb-database/sicilia.mdb")
    Set rs = Server.CreateObject( "ADODB.Recordset" )
    
    SQL="DELETE FROM TabellaAgrigento WHERE ID="&cod
    
    
    
    SQL="SELECT blob FROM TabellaAgrigento"
    rs.Open SQL,Con, 2,2
    
    
    rs("blob")
    
    Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
    objFSO.DeleteFile(server.mappath("/public/"&blob))
    
    Set objFSO = Nothing
    rs.close
    Con.Execute(SQL)
    Con.close
    
    %>
    Ho aperto il recorset ed ho richiamato BLOB, però mi da questo tipo di errore

    codice:
    Wrong number of arguments or invalid property assignment: 'rs'
    cioè sulla riga rs("blob"), ma non capisco il perchè...il recorset è aperto subito dopo la connesione al db

  6. #6
    rs("blob") appeso li' che sta a fa'? il soprammobile?

    sostituiscilo con un ben piu' elegante (è di design!)

    blob = rs("blob")


  7. #7
    Utente di HTML.it L'avatar di ISE
    Registrato dal
    Sep 2003
    Messaggi
    1,314
    Ho risolto inserendo il comando
    codice:
    SQL="DELETE FROM TabellaAgrigento WHERE ID="&cod
    dopo tutti gli altri.

    Grazie ragazzi!!!!!!

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.