Salve,
avri bisogno cortesemente di qualcuno che mi desse una mano con il seguente problema.
Sto eseguendo uno script VB che chiama una pagina php passando un file testo in POST.
La pagina php lo salva nella cartella import e poi lo elabora.
Il problema sta nel fatto che il file nella richiesta post è corretto, dopo il salvataggio nella cartella del server web mi trovo le lettere accentate sostituite da carateri strani.
Codice che chiama la pagina web:
codice:Const STR_BOUNDARY As String = "3fbd04f5-b1ed-4060-99b9-fca7ff59c113" Dim nFile As Integer Dim baBuffer() As Byte Dim sPostData As String '--- read file nFile = FreeFile Open sPath For Binary Access Read As nFile If LOF(nFile) > 0 Then ReDim baBuffer(0 To LOF(nFile) - 1) As Byte Get nFile, , baBuffer sPostData = StrConv(baBuffer, vbUnicode) 'MsgBox sPostData End If Close nFile 'Content-Type: text/html; charset=ISO-8859-1 '--- prepare body sPostData = "--" & STR_BOUNDARY & vbCrLf & _ "Content-Disposition: form-data; name=""userfile""; filename=""" & Mid$(sFileName, InStrRev(sFileName, "\") + 1) & """" & vbCrLf & _ "Content-Type: application/octet-stream" & vbCrLf & vbCrLf & _ sPostData & vbCrLf & _ "--" & STR_BOUNDARY & "--" '--- post With CreateObject("Microsoft.XMLHTTP") .Open "POST", sUrl, bAsync .setRequestHeader "Content-Type", " multipart/form-data; boundary=" & STR_BOUNDARY .send CVar(sPostData) If .Status >= 400 And .Status <= 599 Then skebbyGatewayGetCredit = "status=failed&message=" & .Status & " - " & .statusText Exit Function End If msg = .responseText End With
se da VB salvo su file CVar(sPostData) della send ho ancora le lettere accentate al loro posto
La pagina PHP ha il seguente codice:
Il file che mi ritrovo nella cartella import ha le lettere accentate sostituite da caratteri strani.Codice PHP:require_once ('class.PSRequest.php');
$uploaddir = 'import/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
//echo "File is valid, and was successfully uploaded.\n";
} else {
//echo "Possibile attacco tramite file upload!\n";
}
Ci sto uscendo matto.
Grazie infinite
Andrea

Rispondi quotando
