Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    eliminare immagine dal server

    Buonasera, ho un scritp asp per caricare delle immagini sul server in un percorso definito nel database

    al momento che decido di eliminare una immagine pero', mi viene solo cancellato il riferimento all'immagine nel database, ma l'immagine che veniva da questo richiamata rimane fisicamente sul sever e non viene eliminata....

    posto quello che dovrebbe essere il codice che mi permette di cancellare l'immagine ma che non funziona, sperando in un vostro aiuto
    Grazie
    ---------------------------------------
    <%
    catname= Request.QueryString("cat")
    CatID = Request.QueryString("CatID")
    categoria = Request.QueryString("categoria")
    subcat = Request.QueryString("subcat")

    ID= Request.QueryString("ID")

    Rimuovi = request.QueryString("rimuovi")

    if Rimuovi = "IDIMMAGINE1" then

    ':::::::::::::::::::::::::::::::::::::::::::::: Modifica immagine 1

    Set RS = Server.CreateObject("ADODB.Recordset")
    SQL= "SELECT File1, File2, File3, File4 FROM annunci WHERE ID = " & ID
    RS.Open SQL,conn,2,3
    RS("File1") = ""
    RS.Update
    RS.Close
    SET RS = nothing
    Conn.Close
    SET Conn = nothing

    Response.Redirect "annunci_personaliMod.asp?id=" & id & "&catID=" & catid & "&subcat=" & subcat & "&categoria=" & categoria & "&cat="& catname

    END IF
    %>

    -------------------------------

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Devi fare riferimento fso tipo cosi:
    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    ScriptObject.DeleteFile(Server.mappath("/Nome-Cartella-Immagine/"&request("Nome-Immagine-da-eliminare")))
    Attenzione la cartella delle immagini deve avere diritti di scrittura/lettura altrimenti ti darà errore, per ulteriori approfondimenti fai una ricerca qui sul forum argomento ampiamente trattato.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Grazie dell'aiuto...piano piano si va avanti

    se inserisco questo codice come dici tu mi cancella l'immagine solo se richiamo direttamente l'immagine con il suo nome

    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    ScriptObject.DeleteFile(Server.mappath("/public/foto/-ID_8_camper.jpg"&request("-ID_8_camper.jpg")))

    ma come vedi il nome dell'immagine lo metto direttamente io, perche' se provo a richiamare il nome dell'immagine dal campo del database, mi da errore

    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    ScriptObject.DeleteFile(Server.mappath("/public/foto/"&request("File1")))

    dove per File1 è il nome del campo del database che contiene il riferimeno all'immagine sul server

    provo vari modi per richiamare il nome dell'immagine dal campo del database ma mi da sepre errore..ci sono consigli?? grazie

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Non request (che presume venga da un form...) ma rs (recordset)

    Roby

  5. #5
    sto provando in questo modo ma mi dice file not found


    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    ScriptObject.DeleteFile(Server.mappath("/public/foto/& rs(File1)"))

    mi legge in modo sbagliato il riferimento al file ..come posso fare? qualche anima pia?? grazie

  6. #6
    Originariamente inviato da crazyweb
    sto provando in questo modo ma mi dice file not found


    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    ScriptObject.DeleteFile(Server.mappath("/public/foto/& rs(File1)"))

    mi legge in modo sbagliato il riferimento al file ..come posso fare? qualche anima pia?? grazie
    prova con:
    codice:
    ScriptObject.DeleteFile(Server.MapPath("/public/foto/"& rs("file1")))

  7. #7
    niente da fare, anche cosi non funziona, attendo altri pareri e consigli grazie

  8. #8
    Prova così (cod è l'id che recuperi in querystring e file1 è il nome del campo del db dove è memorizzato il nome dell'immagine)
    codice:
    <%
    ' Recupero il cod
    cod=Request.Querystring("cod")
    ' Elimino le immagini corrispondenti al cod
    Dim Rs
    Dim Sql
    Sql = "SELECT file1 FROM annunci WHERE id="&cod
    Set Rs = Conn.Execute(Sql)
      If Rs.Eof Then
    Response.Write "Nessun file associato per id annunci " & Request.QueryString("cod") & ""
    Else
    Dim objFSO 
    Set objFSO = Server.CreateObject("Scripting.FileSystemObject") 
    'Le immagini vengono cancellate
    objFSO.DeleteFile(Server.MapPath("/public/foto/"& rs("file1")))
    Set objFSO = Nothing
    %>
    <%
    ' Elimino il record
    SQL="DELETE FROM annunci WHERE id="&cod
    Conn.Execute(SQL)
    Response.Redirect "pagina_che_vuoi_tu.asp"
      End IF
    %>
    Salvo errori & omissioni

  9. #9
    risoltoooo..come dicevano nel film non ci resta che piangere..prova prova e provaaaa


    <%
    catname= Request.QueryString("cat")
    CatID = Request.QueryString("CatID")
    categoria = Request.QueryString("categoria")
    subcat = Request.QueryString("subcat")

    ID= Request.QueryString("ID")

    Rimuovi = request.QueryString("rimuovi")

    if Rimuovi = "IDIMMAGINE1" then

    ':::::::::::::::::::::::::::::::::::::::::::::: Modifica immagine 1

    Set RS = Server.CreateObject("ADODB.Recordset")
    SQL= "SELECT File1, File2, File3, File4 FROM annunci WHERE ID = " & ID
    RS.Open SQL,conn,2,3
    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    ScriptObject.DeleteFile(Server.MapPath("\public\fo to\" &(rs("File1"))))

    RS("File1") = ""
    RS.Update
    RS.Close
    SET RS = nothing
    Conn.Close
    SET Conn = nothing

    Response.Redirect "annunci_personaliMod.asp?id=" & id & "&catID=" & catid & "&subcat=" & subcat & "&categoria=" & categoria & "&cat="& catname

    END IF
    %>

    in pratica mi dava gli errori nel richiamare il percorso dell'immagine sul server

    questo quello che funziona

    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    ScriptObject.DeleteFile(Server.MapPath("\public\fo to\" &(rs("File1"))))



    e questo quello che non funzionava

    Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
    ScriptObject.DeleteFile(Server.mappath("/public/foto/"& RS("File1")))


    insomma basta una parentesi messa male che tutto va farsi fottere..


    Grazie ragazzi per i consigli ., alla prossima

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.