Autor Zpráva
seti
Profil *
Mám pole formuláře typu file. Potřebuji nějak ošetřit, aby uživatel nemohl načíst soubor, který by měl název s diakritikou a mezery a neměl velká písmena. Nevíte někdo, jak by se to dalo udělat?
Díky za radu
peta
Profil *
seti
regularni vyrazy?
http://www.volny.cz/peter.mlich/www.htm#www62
Hugo
Profil
A jde toto řešit javascriptem? Mám dojem, že js nemá k tomuto poli přístup (z bezpečnostních důvodů).
Oswald
Profil
Řešit pomocí JS to jde, jediné omezení je, že je value inputů typu file jenom pro čtení. Ve FF a IE jde přečíst celá cesta, v Opeře jenom název vybraného souboru.


<form action="" onsubmit="checkFile()"><input type="file" id="f" /></form>
<script type="text/javascript">
function checkFile() {
var f = document.getElementById('f');
if (!/(^|[\\\/])[a-z0-9_.-]+$/.test(f.value)) {
alert('Název souboru obsahuje nepovolené znaky');
return false;
}
}
</script>


Tohle povolí v názvu souboru jenom malá písmena bez diakritiky, čísla, tečku, pomlčku a podržítko.
seti
Profil *
Díky, to je výborné, to je to co jsem potřeboval.
Toto téma je uzamčeno. Odpověď nelze zaslat.