Autor Zpráva
Bublikphuck
Profil *
Ahoj vši,
...

if(soubor != '')
  {
      var delka = Number(soubor.length);
      var ret = soubor[delka-4]+soubor[delka-3]+soubor[delka-2]+soubor[delka-1];
      
      if((ret == ".jpg") || (ret == ".JPG"))
      }else{
          ok = false;
          error_message += "Špatný formát souboru, soubor není JPG. ";
      }
  }


problem je takový, že v Mozille kdyz pak dam pomoci alert vyhodit "ret" vrátí mi to me pozadované 4 poslední písmena řetězce :), ale v IE to nefunguje.. :) vrátí mi to velký *****... jakoby nechtělo to IE provadet prikaz ...

nervy = fakt[mam]


nervy je promena kam se ulozi prvek pole fakt o indexu mam...
Chamurappi
Profil
Reaguji na Bublikphucka:
Explorer nepodporuje indexování řetězců, "text"[2] ti v něm nikdy nevrátí "x".

Máš přibližně tři možnosti:
a) Převedeš proměnnou soubor na pole, třeba pomocí soubor.split('').
b) Použiješ soubor.charAt(delka - 4) + soubor.charAt(delka - 3) atd.
c) Dáš do ret krásně jednoduše a normálně soubor.substring(delka - 4), bez skládání po znacích.

if((ret == ".jpg") || (ret == ".JPG"))
Nebylo by lepší if(ret.toLowerCase() == ".jpg")?
Bublikphuck
Profil *
Děkuji mnohokrát..
peta
Profil
A co kdyz je pripona jpeg?
Nebylo by jednodussi to omezit v HTML / PHP podle typu souboru?
cz.php.net/resample
jakpsatweb - html - formulare - input - type=file

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: