IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP Discussion :

problème upload binaire


Sujet :

ASP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité(e)
    Invité(e)
    Par défaut problème upload binaire
    Salut,
    J'ai fait une applet JAVA qui modifie un fichier image. J'envoi ensuite ce fichier en HTTP POST pour le récupèrer en ASP. J'ai réussi en php cela écrit bien l'image sur le serveur et l'image est ok. Mais en ASP je n'ai aucun message d'erreur l'image s'ecrit aussi bien sur le serveur mais impossible de l'ouvrir ! Voici le code que j'ai utilisé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    '---------------------------------------------------------------------------------------
    Response.Buffer=true
    	'initialisation des variables --------------------------------------------------------------------------
    	Dim Contenu, TailleContenu, ContenuAscii, X, Y, Z, Position
     
    	Contenu = Request.BinaryRead(Request.TotalBytes)  'lecture binaire de la photo
     
    	TailleContenu = Request.TotalBytes	' taille du fichier en binaire
    	If TailleContenu <> 0 Then
    		ToutOk = 0 		
    		posdebtitre=0
    		posdebinfo=0
    		posfintitre=0
    		posfininfo=0		
    		PosDebutFic=0 
    		PosFinFic=0 
    		PosDebutCont=0 
    		PosFinCont=0 
    		PosDebutFic2=0 
    		PosFinFic2=0 
    		X = 0
    		Y = 1
    		Position = 1
     
    		'recherche du nom du fichier --------------------------------------------------------------------
    		LimitASCII = "filename=" & chr(34) 
    		LimitBin=""
    		for Z = 1 to Len(LimitASCII)
    			 LimitBin = LimitBin & chrB(ASC(Mid(LimitASCII, Z, 1)))
    		next
    		PosDebutFic = InstrB(1, Contenu, LimitBin)
    		if PosDebutFic <> 0 then
    			PosDebutFic = PosDebutFic + LenB(LimitBin)
    		end if
    		'recherche du contenu du fichier, travail en binaire --------------------------------------
    		LimitASCII = "Content-Type:" 
    		LimitBin=""
    		For Z = 1 to Len(LimitASCII)
    		   LimitBin = LimitBin & chrB(ASC(Mid(LimitASCII, Z, 1)))
    		next
    		PosDebutCont = InstrB(1, Contenu, LimitBin)
    		if PosDebutCont <> 0 then
    		   PosFinFic = PosDebutCont - 3
    		   PosDebutCont = PosDebutCont + LenB(LimitBin)
    		end if
    		NomFichier = MidB(Contenu, PosDebutFic , (PosFinFic - PosDebutFic)) 
    		ContenuAscii = ""
    		for Z = 1 to LenB(NomFichier)
    		   ContenuAscii = ContenuAscii & chr(ASCB(MidB(NomFichier, Z, 1)))
    		next
    		NomFichier = ContenuAscii
    		PosFinCont = InstrB(PosDebutCont, Contenu, chrB(13))
    		if PosFinCont <> 0 then
    		   PosDebutFic2 = PosFinCont + 4 
    		end if
    		LimitASCII = "----"
    		LimitBin=""
    		for Z = 1 to Len(LimitASCII)
    		   LimitBin = LimitBin & chrB(ASC(Mid(LimitASCII, Z, 1)))
    		next
    		PosFinFic2 = InstrB(PosDebutFic2, Contenu, LimitBin)
    		if PosFinFic2 <> 0 then
    			ToutOk = 1 
    		end if 
     
    		'détermination de l'extension
    		A = Instrrev(NomFichier, ".")
    		extension = lcase(mid(NomFichier, A +1))
    		if extension <> "jpg" AND extension <> "jpeg" AND extension <> "gif" then
    			ToutOk = 0
    			Response.write extension
    			Response.write("<font color='#000000' size='2' face='Arial, Helvetica, sans-serif'>L'extension du fichier doit être de type JPEG (.jpg ou .jpeg) ou GIF.</font>")
    		end if
     
    		DataFichier = MidB(Contenu, PosDebutFic2 , (PosFinFic2 - PosDebutFic2)) 'renvoi le nb d'octect du contenu du fichier
    		'si taille photo trop grande
    		If Clng(100000)<LenB(DataFichier) Then
    			Response.write("<font color='#000000' size='2' face='Arial, Helvetica, sans-serif'>La photo est trop volumineuse, redimensionnez la ou choisisez une autre photo.</font>")
    			action=""
    		Else
    			If ToutOk = 1 then
    				'utilise une session car serveur non pas tjrs la meme arborescence pour ouvrir le dossier 	upload (cf global.asa)
     
    				'NouveauFic = fichier 'recup le path du dossier fichier
    				NouveauFic=Request.ServerVariables("APPL_PHYSICAL_PATH") & "\test\"&NomFichier
    				response.write "nouveaufic : " & nouveaufic
    				Set FileObject = Server.CreateObject("Scripting.FileSystemObject")
    				Set Out=FileObject.CreateTextFile(NouveauFic, True)  'ouverture du fichier qui l'écrase meme si existe (true)
    				For I = 1 to LenB(DataFichier)
    					Out.Write chr(AscB(MidB(DataFichier,I,1))) 'ecriture de l'image en binaire ds le fichier
    				Next
    				Out.close 'ferme fichier
    				Set Out=nothing
    			end if
    		End If
    	end if
    Merci pour vos solutions


    Edit :
    C'est bon j'ai réussi en utilisant une autre méthode.
    Dernière modification par Domi2 ; 17/03/2011 à 16h42.

Discussions similaires

  1. Réponses: 10
    Dernier message: 12/06/2006, 16h45
  2. [Upload] Problème upload de gros fichiers avec Firefox
    Par the rootsm@n dans le forum Langage
    Réponses: 12
    Dernier message: 19/02/2006, 20h43
  3. [Upload] Problème upload
    Par Kips dans le forum Langage
    Réponses: 2
    Dernier message: 31/01/2006, 13h28
  4. problème upload avec XMLHttpRequest
    Par alexmorel dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 17/12/2005, 17h36
  5. [PHP - MSSQL] Problème d'upload / binaire
    Par noiserie dans le forum MS SQL Server
    Réponses: 12
    Dernier message: 25/07/2005, 18h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo