Vai al contenuto

Upload con ASP ....disperazione!


cxrnvs

Messaggi raccomandati

salve a tutti.

sto lavorando ad un sito e ,fra le funzioni richieste vi e' quella , da parte del proprietario , di eseguire l'upload dal suo computer sul server.

ho realizzato uno script che funziona molto bene ma...... il mio cliente non ha un pc come il mio... lui ha un MAC.... e lo script non funziona!!!!

ho provato su altri pc e l'upload viene eseguito...ho provato su un altro mac ma non funziona niente!!

dunque il problema e' fra asp e mac.... allego il codice nel caso qualche buon anima mi potesse aiutare.

grazie a tutti!!!

<%

percorso = "/"

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,"titolo") > 0 then

titolo = ContenutoFile

end if

if instr(Intestazione,"categoria") > 0 then

categoria = ContenutoFile

end if

if instr(Intestazione,"anno") > 0 then

anno = ContenutoFile

end if

if instr(Intestazione,"mese") > 0 then

mese = ContenutoFile

end if

if instr(Intestazione,"giorno") > 0 then

giorno = ContenutoFile

end if

'===============================

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,"")

'=====

secondi = Second(now)

if mid(NomeUpload,len(NomeUpload)-3,1) = "." then

NomeFile = anno&mese&giorno&secondi&Right(NomeUpload,4)'htm

else

NomeFile = anno&mese&giorno&secondi&Right(NomeUpload,5)'html

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(server.mappath(percorso & NomeFile1), True, 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"

End If

End if

Dim MyDB

MyDB = "annunci.mdb"

Dim objConn, objRs

Set objConn = Server.CreateObject("ADODB.Connection")

Set objRs = Server.CreateObject("ADODB.Recordset")

percorso = Server.MapPath(MyDb)

objConn.Open "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = "&percorso&";Jet OLEDB:Database Password=xxxxxxxxx;"

objRs.Open "SELECT * from annunci",objConn,1,3

objRs.addNew

objRs("titolo") = titolo

objRs("categoria") = categoria

objRs("scadenza") = DateSerial(anno,mese,giorno)

objRs("percorso") = NomeFile

objRs.Update

objRs.close

set objRs = nothing

objconn.close

set objconn = nothing

%>

questo invece e' il codice del form

<html>

<head>

<title>Upload</title>

<script language="JavaScript">

function controllagiorno(){

day = document.aggiorna.giorno.value

if (day < 1 || day > 31 || day == null || day.length < 2)

alert("Errore di inserimento del giorno");

}

function controllamese(){

month = document.aggiorna.mese.value

if (month < 1 || month > 12 || month == null || month.length < 2)

alert("Errore di inserimento del mese");

}

function controllaAnno(){

anno = document.aggiorna.anno.value

if(anno == null)

alert("E' necessario specificare una anno di scadenza");

oggi = new Date();

if(anno < oggi.getYear())

alert("Anno gia' trascorso");

}

function controllaTitolo(){

titolo = document.aggiorna.titolo.value;

if (titolo == "-" || titolo == null || titolo == "")

alert("Titolo obbligatorio");

}

function controllaCat(){

cat = document.aggiorna.categoria.value;

if (cat == null || cat == "")

document.aggiorna.categoria.value = "-"

}

</script>

</head>

<body>

<form name="aggiorna" action="uploadannunci.asp" method ="post" enctype="multipart/form-data">

Giorno (gg)<input type="text" name="giorno" size="2" value ="gg" onChange = "controllagiorno()"></input>

Mese (mm) <input type="text" name="mese" size="2" value ="mm" onChange = "controllamese()"> </input>

Anno (aaaa)<input type="text" name="anno" size="4" value ="aaaa" onChange = "controllaAnno()"> </input>   (SCADENZA)

Titolo       <input type="text" name="titolo" value="-" onChange = "controllaTitolo()"> </input>

Categoria <input type="text" name="categoria" value = "-" onChange = "controllaCat()"> </input>

<input type="file" name="file1">

<input type="submit" value="Upload">

</form>

</body>

</html>

Link al commento
Condividi su altri siti

Archiviato

Questa discussione è archiviata e chiusa a future risposte.

×
×
  • Crea Nuovo...