Autor Zpráva
Monkeys
Profil *
Ake riesenie je lepise ako toto pre IE ?

if( navigator.userAgent.toLowerCase().match(/msie/) )
{
    var objAct = new ActiveXObject("Scripting.FileSystemObject");
    var path = document.getElementById("image").value;
    var objFile = objAct.getFile(path);
    var sizeFile = objFile.size;
    
    //alert(sizeFile);
}

Najprv ten kod nefungoval potom som zistil ze treba v IE Option povolit Activex objekty no a to najhorsie je ze pri spusteni sa to vzdy pyta ci ten script moze spustit.
Robim to koli kontrole uploadovanych obrazkov ...

tento zapis pre IE absolutne nefunguje:

var file = $(":file")[0].files[0];
var fname = file.name;
var fsize = file.size;
...

Vdaka
M.
Chamurappi
Profil
Reaguji na Monkeyse:
FileSystemObject není v registru ve Windowsu označený jako „safe for scripting“, takže v prostředí webové stránky vytvořit nejde (stejně jako drtivá většina nainstalovaných ActiveX prvků).

povolit Activex objekty no a to najhorsie je ze pri spusteni sa to vzdy pyta ci ten script moze spustit
To by udělal jen šílenec. FSO má přímý přístup k disku, může i zapisovat.

Alternativa pre ActiveXObject
Alternativou pro ActiveXObject je <object> v HTML. Ale pochybuju, že ti to pomůže, protože <object> má stejná omezení.
Hledáš spíš alternativu pro zjištění velikosti souboru … a tu skoro určitě nenajdeš.
Monkeys
Profil *
Chamurappi:

Kod pre ostatne prehliadace mam napisany ale neviem si rady s Explorerom.

Napadaju ma 2 riesenia:
1) bud na strane klienta kontrolovat maximalne ci je vyplnene policko FILE a neriesit ci ma vlozeny subor prekroceny limit
2) vsetko to vyriesit v PHP na serveri

a tu skoro určitě nenajdeš
Ale je to skoda ze su pri vyvoji aj taketo problemy


M.
Radek9
Profil
Monkeys:
1) Nezbývá ti nic jiného.
2) To musíš udělat každopádně. Ochrana pouze pomocí JS nestačí.
_es
Profil
Monkeys:
Kod pre ostatne prehliadace mam napisany ale neviem si rady s Explorerom.
Zatiaľ si ani nenapísal, čo ten „kód“ má robiť. Určite ide o „ostatné“ prehliadače, alebo len o niektoré, podporujúce nejakú novšiu vec?
Monkeys
Profil *
_es:
islo mi o zistenie velkosti suboru pred tym ako ho poslem na zapisanie.

Tento zapis nizsie funguje len pre prehliadace podporujuce HTML 5 co bohuzial IE 8 nie je.
Myslim si ze drtiva vacsina ludi stale pouziva WinXP v ktorom je IE8. A tie vyskakujuce okienka typu "vas prehliadac je zastaraly prosim aktualizujte si ho" mi lezu na nervy.

var file = $(":file")[0].files[0];
var fname = file.name;
var fsize = file.size;
...

M.
_es
Profil
Monkeys:
Na čo do toho „montuješ“ jQuery, keď aj tak nakoniec z jQuery objektu extrahuješ natívny objekt? To je taký problém, aby prehliadačom bez podpory HTML5 zamietol odoslanie súboru až server? Kontrolu na serveri musíš robiť aj tak.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0