Avatar billede kirnehsnah Nybegynder
05. januar 2005 - 02:49 Der er 7 kommentarer og
1 løsning

Danske tegn i filnavn i javascript

Jeg har følgende popup script i en html fil for sig selv

<HTML>
<HEAD>
<TITLE>SteffenTast.dk</TITLE>
<script language='javascript'>
  var arrTemp=self.location.href.split("?");
  var picUrl = (arrTemp.length>0)?arrTemp[1]:"";
  var NS = (navigator.appName=="Netscape")?true:false;

    function FitPic() {
      iWidth = (NS)?window.innerWidth:document.body.clientWidth;
      iHeight = (NS)?window.innerHeight:document.body.clientHeight;
      iWidth = document.images[0].width - iWidth;
      iHeight = document.images[0].height - iHeight;
      window.resizeBy(iWidth, iHeight);
      self.focus();
    };
</script>
</HEAD>
<BODY bgcolor="#000000" onload='FitPic();' topmargin="0" 
marginheight="0" leftmargin="0" marginwidth="0">
<script language='javascript'>
document.write( "<img src='" + picUrl + "' border=0>" );
</script>
</BODY>
</HTML>

Problemet er at popuppen ikke virker med filnavne der indeholder æ,ø og å. Filnavnene er omformateret til %F8 og hvad karaktererne ellers hedder. Kan ses i drift på; http://steffen.hhravn.dk/index.php?side=værker
Avatar billede kirnehsnah Nybegynder
05. januar 2005 - 02:49 #1
glemte lige at sige at det selvfølgelig virker fint i mozilla, det er IE der er problemet.
Avatar billede fennec Nybegynder
05. januar 2005 - 08:18 #2
Det er sikkert fordi du skal have decoded parameterne. Så %F8 bliver lavet om til det rigtige. Kan ikke lige huske hvordan det gøres i JavaScript, men nu så jeg du bruger PHP, og der er kan du bruge urldecode() funktionen til det. Men så skal du lave lidt om på koden.
Avatar billede kirnehsnah Nybegynder
05. januar 2005 - 17:01 #3
Kan du give et eksempel på hvordan det skulle gøres i php? Overvejede godt om man kunne gøre det, og har prøvet en del, men har ikke fået noget til at virke.
Avatar billede roenving Novice
05. januar 2005 - 19:56 #4
<script language='javascript'>
  var arrTemp=self.location.href.split("?");
  var picUrl = (arrTemp.length>0)?unescape(arrTemp[1]):"";

    function FitPic() {
      iWidth = (window.innerWidth)?window.innerWidth:document.body.clientWidth;
      iHeight = (window.innerHeight)?window.innerHeight:document.body.clientHeight;
      iWidth = document.images[0].width - iWidth;
      iHeight = document.images[0].height - iHeight;
      window.resizeBy(iWidth, iHeight);
      self.focus();
    };
</script>
Avatar billede kirnehsnah Nybegynder
05. januar 2005 - 22:20 #5
Tak, det halp vist. Endte med at skrive det sidste i php, og har nu en løsning der virker.
Avatar billede olebole Juniormester
06. januar 2005 - 11:36 #6
<ole>

Du vil altid have vrøvl med andre end internationale tegn i filnavne. Det bør du på enhver måde undgå - og hvis det er bruger-uploadede billeder, bør du afvise billeder med skandinaviske tegn og bede folk om at omdøbe dem  :)

/mvh
</bole>
Avatar billede kirnehsnah Nybegynder
06. januar 2005 - 16:02 #7
Er udemærket klar over det er noget møg, men ret anvendeligt når det virker .Ihvertfald lige her, og med min skøre måde at opbygge siden på. Nu er det et ret lille projekt, så det er til at overskue følgerne, og jeg har vist fået styr på de problemer der er.
Avatar billede roenving Novice
08. januar 2005 - 10:08 #8
-- så kan du vel lukke spørgsmålet ?-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester