Promotic

Upload - Transfer plików z Web klienta do serwera

Obiekt PmaWebDir umożliwia zaoferowanie strony html z formularzem, który umożliwia klientowi wybrać plik (lub pliki) zapisane na komputerze Web klienta i te wysłać do serwera.

Szablon strony (upload.htm):
<html>
<head>
<title>Upload file</title>
<style type="text/css">
body {background-color:#efefef;}
hr,div {width:400px;}
h2 {color:#000080;text-align:center;}
</style></head>
<body><div>
<h2>Select a file to upload to the server</h2>
<form enctype="multipart/form-data" method="post" action="#">
File to upload: <input id="fileupload" name="myfile" type="file" multiple/><hr/>
<input type="submit" id="submit" value="Upload to server"/>
</form>
</div></body>
</html>


Stronę można wytworzyć również w skrypcie w zdarzeniu onPageModify jeżeli konfigurator "Źródło danych" jest ustawiony na Tekst wprowadzony do właściwości pEvent.PageString w zdarzeniu onPageModify. Tak jak wykonano w konfiguracji wstępnej Konfiguracja wstępna "PmaWebDir - Upload plików z Web klienta do serwera".

Przetwarzanie:
Opracowanie otrzymanych plików oraz ich zapisanie do foldera #data: jest realizowane w zdarzeniu onPageAction w następujący sposób:
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var oData = pEvent.Data;
if (Pm.GetVarType(oData, 1) == "PmBuffer")
{
var aParts = Pm.HttpFormDataParse(oData);
var iParts;
for (iParts = 0; iParts < oData.GetSize(1); iParts++)
{
var mPart = aParts.GetItem(iParts, -1);
mPart.Value.SaveToFile(0, "#data:" + mPart.File, 0, -1);
}
}
Otwarcie strony:
Skrypt w zdarzeniu onButtonUp obiektu PmgButton, który otworzy stronę upload.htm obiektu PmaWebDir do wyboru oraz wysłania pliku do serwera.
JavaScriptWybierz oraz skopiuj do schowka

var oCreator = Pm.CreateView(null, "/Web/Dir", "file:upload.htm", "target:_blank;");
oCreator.Open();

Historia:
Pm9.00.15: Wytworzono
© MICROSYS, spol. s r.o.