Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Tomáš Pařízek:1.1.2019 15:47

Dělám si malý program pro něhož je nepostradatelné nahrávání souborů, potřebuju poradit. Když zadám:

<input type="file" onchange="alert(this.value)">

Cesta vždy vypadá takto:
C:/fakepath/na­zevsouboru
Stačilo by mně nastavení jenom pro sebe, program je můj osobní a pro ostatní nepotřebný, tudíž ho nikomu dávat nebudu.

Zkusil jsem: Už jsem taky zkoušel toto:

<input type="file" onchange="alert(this.files[0].name)">

Chci docílit: Rád bych dosáhnul toho, aby mně program vyhodil celou cestu k souboru (obrázku).

 
Odpovědět
1.1.2019 15:47
Avatar

Člen
Avatar
:1.1.2019 19:13

Z bezpečnostných dôvodov browser neprezrádza reálnu cestu k súboru. Ak chceš tento obrázok zobraziť ešte pred tým, ako sa formulár odošle, použi FileReader API (doc. https://developer.mozilla.org/…I/FileReader).

Editováno 1.1.2019 19:15
 
Nahoru Odpovědět
1.1.2019 19:13
Avatar
Šimon Raichl
Tvůrce
Avatar
Odpovídá na Tomáš Pařízek
Šimon Raichl:1.1.2019 20:35

Jak jiz zminil [me|]12764[/me|], z file inputu nemuzes dostat celou cestu, jinak tady prikladam na ukazku jednoduchy pouziti FileReaderu:

const upload = document.querySelector("input[type=file]");
const img = document.querySelector("img");

upload.addEventListener("change", e => {
    const reader = new FileReader();
    const file = e.target.files[0];

    reader.onload = e => img.src = e.target.result;

    reader.readAsDataURL(file);
});
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
1.1.2019 20:35
Avatar
Odpovídá na Šimon Raichl
Tomáš Pařízek:2.1.2019 14:03

Dobře, děkuju, ale můžu se zeptat na konkrétní použití v praxi? Já v tom kódu nějak nevidím že by odkazoval na konkrétnétní input. Předem děkuju za odpověď.

 
Nahoru Odpovědět
2.1.2019 14:03
Avatar
Odpovídá na Šimon Raichl
Tomáš Pařízek:2.1.2019 14:11

Jinak, funguje to, proto dávám fajfku, ale vědět něco o tom odkazování by se hodilo. Díky

 
Nahoru Odpovědět
2.1.2019 14:11
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.