Re: Upload de fichiers sur serveur apache

Posté par lmame le 6/10/2005 20:48:45
Bon, peut être un début de piste, j'ai un code qui "marchote"...
Je n'ai pas plus de temps à passer dessus et honnêtement je ne sais pas si c'est la faute de Windev ou pas là dessus :)

Voici le code Windev, à mettre par exemple dans un bouton:
url_lma est une chaîne =""
header_lma est une chaîne =""
fic_sent est une chaîne =""
content_type est une chaîne =""
BOUNDARY est une chaîne =""
nom_fichier est une chaîne =""



//on ne rit pas svp, c'était juste pour un test...
BOUNDARY="lmaisgreat" //ce qui va nous servir de délimiteur


//l'URL où est le fichier PHP (cf plus loin)
url_lma="http://localhost/test/test_upload.php"


//nom du fichier (local) à transférer
nom_fichier="C:\Refugees.jpg"

//construction de la trame
fic_sent+=CR+"--"+BOUNDARY+CR+"Content-disposition: form-data;name=addfile"+CR+CR+"1"
fic_sent+=CR+"--"+BOUNDARY+CR+"Content-disposition: form-data;name=filename;filename="+nom_fichier+CR		//fichier envoyé
fic_sent+="Content-Type: image/jpeg; charset=iso-8859-2"+CR
//pour image: //"image/pjpeg"
//pour soft?: //"application/octet-stream"
fic_sent+="Content-Transfer-Encoding: binary"+CR
fic_sent+="Content-Length: "+fTaille(nom_fichier)+CR+CR

//données fichiers
//fic_sent+=fChargeTexte(nom_fichier)		//ca ne marche pas, si il y a un caractère NULL ça déconne...
fic_sent+=Remplace(fChargeTexte(nom_fichier),Caract(0),"/LMA0/")		//on remplace les NULL, le code en PHP devra en tenir compte :(

//fin envoi fichier:
fic_sent+=CR+"--"+BOUNDARY+"--"+CR


//les headers:
content_type="multipart/form-data; boundary="+BOUNDARY
Trace(HTTPRequête(url_lma,"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)",header_lma,fic_sent,content_type))


Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=14&topic_id=2824&post_id=11863