[XP SP2 et IE 6]pb ouverture de fichier
Bonjour,
J'aurais besion d'aide sur un problème de download fichier sur IE 6 via une application PHP.
Le principe :
J'utilise une application PHP/mysql pour acceder à des fichiers stockés sur un file system du serveur et non visibles directement.
Une fois le fichier à ouvrir determiné, le script PHP envoie une entete HTML, ouvre le fichier et le lit sur le flux;
Le problème :
Tout cela fonctionnait très bien sur toutes les machines clientes installées (c'est une appli intranet) : NT,W2000,Linux,Solaris et les divers navigateurs : IE 5.5 ,6.0 , Firefox, Mozilla, Konqueror, ...
Le probleme est en fait sur les postes clients installés en IE 6 et Windows SP2 : le message :
Internet Explorer cannot download ?operation=viewfile&id=9496 from intra.xxx.com
Internet Explorer was not able to open this Internet site. The Internet site is either unavialable or cannot be found .Please try again before.
A noter que :
- cela fonctionnait bien en SP1
- si l'utilisateur connecté a les droits "administrateur" ( au sens windows ) ca marche !!
Je pense à un pb de restriction de droits sur IE ?? en fait si le fichier est un .doc le format est bien detecté mais word n'est pas lancé ! Peut etre IE n'a plus le droit de lancer une autre application dans ce cas précis ?
Est ce un probleme connu par quelqu'un qui pourrait m'aider ?
Merci d'avance .
Le code qui fait partie de ma classe file.php :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| function View()
{
global $default;
global $myUser;
$extension = GetExtension($this->filename);
$path = GetFullPath($this->parent);
$fspath = $default->data_dir."/".$path.$this->filename;
$mimetype = GetMimeType($extension);
if($mimetype == "" ) $mimetype = "null";
header("Pragma: cache"); // for ie and ssl !!!!
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Disposition: inline; filename=\"$this->filename\"");
header("Content-Location: $this->filename");
header("Content-Type: $mimetype");
header("Content-Length: $this->size");
$wnb_enr = $this->size / $default->export_buffer_size;
$wslast_enr = $this->size % $default->export_buffer_size;
$wf=fopen($fspath , "rb");
for ($wj=1; $wj<=$wnb_enr; $wj++) {
$contents = fread ($wf, $default->export_buffer_size);
print $contents;
}
if ($wslast_enr > 0) {
$contents = fread ($wf, $wslast_enr);
print $contents;
}
fclose($wf);
exit();
} |