Wszystko działa ok, jeżeli chcę wysłać dane tekstowe.
W przybliżeniu wygląda to tak:
- Kod: Zaznacz cały
DataToSend = "a=1&b=2";
xmlhttp.open("POST","http://adres");
xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlhttp.send(DataToSend);
I teraz, czy jest możliwe wysłanie w podobny sposób pliku wybranego w polu <input type="file" /> ?
Rozumiem problemy wynikające z bezpieczeństwa lokalnych plików.
Ale przecież jeżeli użytkownik wybrał już plik do tego pola przy pomocy przycisku Przeglądaj lub wpisał ręcznie, to znaczy że zgadza się na wysłanie tego pliku.
Może jest jakaś opcja, alert, który użytkownik może jeszcze zaznaczyć i wyrazić zgodę na wysłanie pliku.
Dochodzi takżke problem z formatem danych w zmiennej DataToSend.
Na pewno muszą to być dane binarne w jakiś sposób odczytane z dysku i wysłane z odpowiednim nagłówkiem. Tak jak atrybut encode w <form>, kiedy chcemy wysłać pliki.
Jeżeli ktoś potrafi mi pomóc, proszę
Być może jest to możliwe przy użyciu innych technik niż JavaScript?