-
Data: 2014-08-22 23:13:24
Temat: Drag and drop upload nie działa
Od: Marek <p...@s...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Witam,
Nie wiem w czym rzecz. W HTML zrobiłem DIV'a reagującego na
przeciągnięcie plików. JS przechwytuje zdarzenie upuszczenia plików na
tym DIVie.
Fragment kodu jest następujący:
case "drop":
files = ev.dataTransfer.files;
fd=new FormData();
for(i=0, f; f = files[i]; i++) fd.append("files[]",f);
xhr.open("POST","mojSkrypt.php",true);
xhr.send(fd);
break;
gdzie:
xhr = new XMLHttpRequest();
Gdy skrypt wykonuje się do serwera idą nagłówki (IE11):
Żądanie POST /publisher/mojSkrypt.php HTTP/1.1
Accept */*
Content-Type multipart/form-data;
boundary=---------------------------7de3db2f2b1910
Referer https://xxxx.pl/yyy.php
Accept-Language pl
Accept-Encoding gzip, deflate
User-Agent Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0)
like Gecko
Host xxxx.pl
Content-Length 1039469
DNT 1
Connection Keep-Alive
Cache-Control no-cache
Cookie rozne cookies
Widać, że niby idą obrazki zawarte w files. Długość contentu jest
odzwierciedleniem, że niby coś zgromadzono i zależy od ilości
załączonych plików. Jednakże do skryptu PHP nic nie dociera w zmiennych
POST.
Natomiast gdy przed wysłaniem dodam:
fd.append("files[]","aaa");
fd.append("files[]","bbb");
to po stronie serwera otrzymam, że files to array(2)= ["aaa","bbb]. Co
ciekawe, zrobiłem podgląd w JS tego co chcę wysłać:
reader = new FileReader();
reader.addEventListener("load",this.addToPreview.bin
d(this));
reader.readAsDataURL(file);
No i obrazki wyświetlają się po stronie HTML dzięki metodzie
addToPreview(), która wstawia w HTML obiekt Image z src=ev.target.result
Czyli od strony kodu JS wszystko ok. Czy istnieją jakieś dodatkowe
wymogi od strony kodu HTML? Czy musi tam być jakiś formularz
bezwzględnie aby kod ożył i przesłał dane z plików? Czy jakieś specjalne
nazwy pól mają tam też być? A może to wina IE11, w którym coś nie działa?
--
Pozdrawiam
Marek
Następne wpisy z tego wątku
- 23.08.14 15:33 Marek
Najnowsze wątki z tej grupy
- Jakie znacie działające serwery grup dyskusyjnych?
- is it live this group at news.icm.edu.pl
- php, linki z nazwami a $_GET, SEO
- www polityka pl captcha
- dyktatura brudnego palucha
- www.znanylekarz.pl
- Czy pytanie o sczytywanie stron programami/skryptami to tu?
- Grupy webdevowe
- Jak wydrukować stronę?
- IIS, kilka witryn
- linki <a href="/strona.php"> (ze slashami)
- co rozszerza stronę??
- responsywny akapit <p>
- Czy istnieje jakiś emulator przeglądarek pod Mac'a?
- taka sama konfiguracja dla localhost i produkcji
Najnowsze wątki
- 2024-11-08 Akumulator Hyundai
- 2024-11-08 Warszawa => Manager/Specialist e-commerce (B2C) <=
- 2024-11-08 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-08 Gdańsk => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-11-08 znaj podstawe
- 2024-11-08 Chrzanów => Specjalista ds. public relations <=
- 2024-11-08 Warszawa => Data Scientist / Data Engineer (predictive modelling) <=
- 2024-11-08 zbrojone wężyki hamulcowe
- 2024-11-07 Pytanie o transformator do dzwonka
- 2024-11-07 Warszawa => Infrastructure Automation Engineer <=
- 2024-11-07 międzymordzie USB 3.2 jako 2.0
- 2024-11-07 Warszawa => Site Reliability Engineer (SRE) <=
- 2024-11-07 Warszawa => Presales / Inżynier Wsparcia Technicznego IT <=
- 2024-11-07 Warszawa => ECM Specialist / Consultant <=
- 2024-11-07 Rzeszów => Senior SAP HANA Developer <=