webForumDet fria alternativet

Kolla filtyp vid filuppladdning

3 svar · 249 visningar · startad av Koggen

KoggenMedlem sedan juni 2002169 inlägg
#1

Hej
Jag försöker mha javascript och indexOf kolla om den fil man valt att skicka upp till servern är av rätt typ. Det skall i mitt fall bara gå att skicka upp PDF-filer. Men det kvittar hur jag gör så verkar filen slinka igenom.

Jag har inte riktigt kläm på javascriptet heller så lite förklaring där vore mycket trevligt :)
Det går kanske inte att kolla filtyp på en <input type="file"> med javascript??

if(document.uploadform.dokument.value.toLowerCase().indexOf('.pdf',0)==0){

osv....

Jag förstår inte ovanstående kodexempel riktigt, t ex vad har de två nollorna för funktion (den ena ger resultatet om strängen hittats eller ej, men den andra??)

Tack på förhand

PepeJeriaMedlem sedan feb. 2003774 inlägg
#2

Det ovanstående gör är att först konvertera strängen i dokumnet fältet till lowerCase(), sedan söka efter strängen ".pdf".
Det andra argumentet (som är optional) i indexOf() är för att vart i strängen den ska börja söka efter ".pdf". Om man utelämnar den så börjar den automatiskt söka från början av strängen.

Det indexOf(".pdf") returnerar det angivna sökordets position i strängen. Alltså 0 (i början av strägen) eller högre. Om den inte hittar ".pdf" så returnerar den -1

<script type="text/javascript">
function checkExtension(form)
{
	if(form.dokument.value.toLowerCase().indexOf(".pdf") == -1)
	{
		alert("Ej pdf fil");
		return false;
	}
	
	return true;
}
</script>

<form onSubmit="return checkExtension(this);">
<input name="dokument" type="file"><input type="submit">
</form>
KoggenMedlem sedan juni 2002169 inlägg
#3

Tack, då vet jag det nu. Det funkade som det skulle.

crisse6Medlem sedan dec. 20002 526 inlägg
#4

Vet inte om du kor asp/php eller vad du nu kor... men i asp kan du kolla med if-sats... blir ju sakrare da nagon, obs "nagon" kanske har stangt av javascript ;)

134 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)