ugrás a tartalomhoz

PHP letöltő script VS. IE

TIV · 2006. Júl. 30. (V), 15.37
Üdv!

Itt egy php letöltő script:
  1. header("Content-type: archive/zip");  
  2. header("Content-Disposition: attachment; filename=pro.ba.zip");  
  3. readfile("pro.ba.zip");  


Ha egy kiterjesztése van a fájlnak működik, ha kettő, akkor Internet Explorer alatt beletesz egy oda NEM kellő [1]-et, így a letöltésre felkínált fájlnév ez lesz: pro[1].ba.zip
Opera, stb alatt megy...

Hogy tudnám megoldani a problémát, hogy IE alatt is működjön?

Előre is köszi!
TIV
 
1

%2e

Rici · 2006. Júl. 31. (H), 00.05
Ez az IE "furcsasága", a következőképpen lehet kiküszöbölni.

Az utolsó kivételével a '.' karaktereket '%2e' sztringgel kell helyettesíteni, de csakis IE alatt.

Tehát:
  1. header("Content-type: archive/zip");  
  2. header("Content-Disposition: attachment; filename=pro"  
  3.   . (  
  4.    strstr($_SERVER['HTTP_USER_AGENT'], 'MSIE') &&  
  5.    !strstr($_SERVER['HTTP_USER_AGENT'], 'Opera') ?  
  6.    '%2e' : '.'  
  7.   ) .  
  8.   "ba.zip");  
  9. readfile("pro.ba.zip");  
2

thx

TIV · 2006. Szep. 30. (Szo), 22.59
nagyon köszönöm! műxik!:)