Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Gestione degli Errori

  1. #1
    Utente di HTML.it L'avatar di tony83
    Registrato dal
    Feb 2005
    Messaggi
    3,179

    Gestione degli Errori

    Ciao volevo sapere come fare esattamente a gestire un errore di file già esistente,sto parlando ovviamente della creazione di un file con fso, e nel caso trovasse quel tipo di errore fargli fare una determinata cosa!...
    Tony

  2. #2
    se tu dici di sapere se un file è già presente su server, allora devi usare FileExists
    codice:
    if fso.FileExists(path_file) then
    ...
    end if
    se invece dici di voler eseguire un'operazione con fso e magari pensi che dia errore, allora usi on error resume next

  3. #3
    Utente di HTML.it L'avatar di tony83
    Registrato dal
    Feb 2005
    Messaggi
    3,179
    Originariamente inviato da santino83
    se tu dici di sapere se un file è già presente su server, allora devi usare FileExists
    codice:
    if fso.FileExists(path_file) then
    ...
    end if
    se invece dici di voler eseguire un'operazione con fso e magari pensi che dia errore, allora usi on error resume next
    codice:
    dim utente
    utente = ""
    dim password
    password = ""
    if Session ("sssUtente") = utente or Session("sssPassword") = password then 
    response.redirect("password.asp?errore=1")
    end if
    %>
    
    <%
    
    if request.querystring("fase")="seconda" then
    dim pagina_di_destinazione
    pagina_di_destinazione=Session("sssUtente") & "/" & session("sssUtente") & ".asp" 
    'On Error Resume Next 
    percorso = "C:\Inetpub\incotecnet.it\password\"&session("sssUtente")&"\"
    
    ByteRicevuti = Request.TotalBytes
    
    if ByteRicevuti > 0 then
    	DatiRicevuti = Request.BinaryRead(ByteRicevuti)
    	For i = 1 To lenB(DatiRicevuti)
    		FileBinario = FileBinario & chr(ascB(midB(DatiRicevuti,i,1)))
    	Next
    	FirmaFile = left(FileBinario,instr(FileBinario,"" & vbCrLf)-1)
    	ArrPezzi = split(FileBinario,FirmaFile)
    
    	for item = 1 to ubound(ArrPezzi)-1
    		Inizio = instr(ArrPezzi(item),"" & vbCrLf & "" & vbCrLf)
    		Intestazione = left(ArrPezzi(item),Inizio-1)
    		Inizio = Inizio + len("" & vbCrLf) + len("" & vbCrLf)
    	    	ContenutoFile = mid(ArrPezzi(item),Inizio,len(ArrPezzi(item))-Inizio-1)
    	    
    		if instr(Intestazione,"file1") > 0 then
    		    i = instr(Intestazione,"filename=")
    			j = instr(i + 10,Intestazione,chr(34))
    			NomeUpload = mid(Intestazione,i + 10,j-i-10)
    			i = instrRev(NomeUpload,"\")
    			if i<>0 then
        		    NomeFile = mid(NomeUpload,i + 1)
        		else
        			NomeFile = NomeUpload
        		end if
          		if i<>0 then
    				Set FSO = CreateObject("Scripting.FileSystemObject")
    				Upload1 = True
    				DimensioneFile1 = len(ContenutoFile)
    				EstensioneFile1 = right(ContenutoFile,3)
            NomeFile1 = NomeFile
        			Set textStream = FSO.CreateTextFile(percorso & NomeFile1, False, False)     			textStream.Write ContenutoFile
        			textStream.Close
        			Set textStream = Nothing
    	   			Set FSO = Nothing
        	   end if
    		end if
    	next
    If Upload1 = true then
    	Response.Write "
    La dimensione del file che hai uploadato è di " & DimensioneFile1*0.001 & "kb"
    	Response.Write "
    Grazie di aver inviato il tuo file"
    End If
    End if
            if Err.Number <> 0 then 
        %>
        <script>
        alert("Attenzione c'è un errore. Upload annullato! Controllare e ripetere l'operazione");
        window.location.href="upload.asp";
     </script>
    <%
    end if
    end if
    %>
    <form action="upload.asp?fase=seconda&x=false" method="post" enctype="multipart/form-data">
    FILE
    <input type="file" name="file1" size="20">
    <input type="submit" value="Upload">
    </form>
    <%
    if request.querystring("fase")="seconda"  then
    response.write "<SCRIPT>window.setTimeout(""location.href='"&pagina_di_destinazione&"';"",'3000');</SCRIPT>"
    end if
    Come puoi vedere nella istruzione in rosso crea il file per cui, ho messo il valore come false, però in realtà vorrei fare che se risulti già esistente chiedi conferma prima di sovrascrivere!

    Per cui pensavo alla gestione dell'errore, però devo sapere il numero esatto altrimenti con fileExists non lo so fare!
    che faccio?
    Tony

  4. #4
    codice:
    if not FSO.FileExists(percorso & NomeFile1) then
    
    scrivo=false
    else
    
    'chiedi conferma (forse usando la funzione msgbox però boh) e poi
    msgbox...
    
    if vuole_scrivere then scrivo=true
    
    end if
    
    
    if scrivo then
    Set textStream = FSO.CreateTextFile(.....
    end if

  5. #5
    Utente di HTML.it L'avatar di tony83
    Registrato dal
    Feb 2005
    Messaggi
    3,179
    Originariamente inviato da santino83
    codice:
    if not FSO.FileExists(percorso & NomeFile1) then
    
    scrivo=false
    else
    
    'chiedi conferma (forse usando la funzione msgbox però boh) e poi
    msgbox...
    
    if vuole_scrivere then scrivo=true
    
    end if
    
    
    if scrivo then
    Set textStream = FSO.CreateTextFile(.....
    end if
    forse sarebbe più facile con la gestione di errore!
    in quanto se esce quell'errore allora passa alla gestione, la domanda la faccio in js su una pagina di appoggio, poi la rimando su questo file con un variabile querystring che se accetto allora sarà = a si altrimento no per esempio e se la querystring è uguale a si allora copio e incollo:

    codice:
    Set textStream = FSO.CreateTextFile(percorso & NomeFile1, False, False)     			textStream.Write ContenutoFile
        			textStream.Close
        			Set textStream = Nothing
    	   			Set FSO = Nothing
        
    If Upload1 = true then
    	Response.Write "
    La dimensione del file che hai uploadato è di " & DimensioneFile1*0.001 & "kb"
    	Response.Write "
    Grazie di aver inviato il tuo file"
    altrimenti esci dalla pagina con messaggio impossibile upload..
    il problema è:
    ma a quale numero corrisponde l'errore di file già esistente?
    Tony

  6. #6
    Utente di HTML.it L'avatar di tony83
    Registrato dal
    Feb 2005
    Messaggi
    3,179
    ma a quale numero corrisponde l'errore di file già esistente?
    il problema è solo questo, penso che anche in questa maniera si possa fare!...
    Tony

  7. #7
    Utente di HTML.it L'avatar di tony83
    Registrato dal
    Feb 2005
    Messaggi
    3,179
    ma a quale numero corrisponde l'errore di file già esistente?
    il problema è solo questo, penso che anche in questa maniera si possa fare!...
    Tony

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.