inviare file senza form

  • Creatore Discussione Creatore Discussione jake_cz
  • Data di inizio Data di inizio

jake_cz

Utente Attivo
15 Giu 2007
31
0
0
Ciao vorrei fare in modo che due sever si scambino un file non necessariamente di testo....il tutto senza utilizzare il form, inquanto lo scambio deve avvenire senza la presenza dell'utente

ciao e grazie
 
Devi gestire le intestazioni con i ContentType. Fai una ricerca su Google per ADODB.Stream, credo che una soluzione per gestire diverse casistiche di file la trovi.

Ho cercato qualcosa con adodb.stream...xo' cosi facendo ci vuole l'utente che salva il file..........la procedura deve essere automatica
 
Si ok, ma se passi dei parametri via querystring alla pagina che gestisce le intestazioni ed ADODB.Stream, puoi dimanizzarele procedure.

Parto un attimo da questo esempio:

http://www.aspcenter.net/articoli/132.asp

Ecco come puoi modificarlo:

<%@LANGUAGE = VBScript%>
<%
Dim formato, risultato
formato = Server.HTMLEncode("formato")
Select Case formato
Case "GIF" : "image/GIF"
Case "JPG" : "image/JPEG"
End Select
Response.ContentType = risultato
Dim immagine
Set immagine = Server.CreateObject("ADODB.Stream")
immagine.Open
immagine.Type = 1
immagine.LoadFromFile Server.MapPath("immagine.gif")
Response.BinaryWrite immagine.Read
immagine.Close
Set immagine = Nothing
Response.End
%>

Chiaramente è solo un esempio (che non ho nemmeno testato) e puoi ampliarlo a seconda delle tue esigenze non solo per le immagini.

Ciao!
 
A questo punti credo di essere proprio crudo...perdonami se non capisco al volo.........passando i parametri rendo dinamico il file che voglio scaricare....ma la procedure per ricevere il file in binario e salvarlo...come faccio????

Il mio problema è (o forse credo meglio forse è) quello di richiamare una pg su un server remoto alla quale passo dei parametri tra cui user, password, e il nome del file....a questo punto il server mi riconosce e quindi mi rispode con una variabile che contiene il file credo in binario in modo che io possa salvarlo nella mia directory per poi poterlo usare sul mio server......


esempio:

<%
Function RSBinaryToString(xBinary)
Dim Binary
If vartype(xBinary)=8 Then Binary = MultiByteToBinary(xBinary) Else Binary = xBinary

Dim RS, LBinary
Const adLongVarChar = 201
Set RS = CreateObject("ADODB.Recordset")
LBinary = LenB(Binary)

If LBinary>0 Then
RS.Fields.Append "mBinary", adLongVarChar, LBinary
RS.Open
RS.AddNew
RS("mBinary").AppendChunk Binary
RS.Update
RSBinaryToString = RS("mBinary")
Else
RSBinaryToString = ""
End If
End Function


TotalBytes = Request.TotalBytes
ByteData = Request.BinaryRead(TotalBytes)
StrData = RSBinaryToString(ByteData)

Response.Write "<br><br>file da scaricare: "&StrData&"<br><br>"

response.write percorso_dest&"\"&strdata


' Intruduce the url you want to visit
GotothisURL = "http://192.168.1.34/images/" & strdata

' Create the xml object
Set GetConnection = CreateObject("Microsoft.XMLHTTP")
' Conect to specified URL
GetConnection.Open "get", GotothisURL, False
GetConnection.Send

ResponsePage = GetConnection.responsetext
Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
Set MyFile = ScriptObject.CreateTextFile("c:\prova\"&nome_file)
MyFile.Write ResponsePage
MyFile.Close
Set MyFile = Nothing
Set ScriptObject = Nothing
%>

questo ad esempio mi funziona, xo' solo con i file di testo con gli exe no.

Con questo io avvio dal mio server locale una pag che richiama questa sul server remoto il quale si scarica il file nella sua dir c:\prova\&nome_file

Non riesco a farlo funzionare con i file exe....xkè naturalmente non è farina del mio sacco e non so dove parare x capire come risolvere:D

Se hai qualche link che mi puo' spiegare meglio...non so
 
Inizio a capire un po meglio.

In effetti è quello che fa una procedura di upload... trasformi il file in binaro e lo ricomponi... n po il concetto della materializzazione e della smaterializzazione... giusto?

Perchè non provi ad usare un comune script per l'upload?
 
beh xkè vedi vorrei fare io il codice.......in modo poter gestire tutto.........Io uso una proc x l'upload xo' passa sempre da un pagina con form e quindi dall'utente.
 

Discussioni simili