oki, j'ai vite tapoté ca et ca marche :
1 2 3 4 5 6 7 8 9 10 11 12 13
| <html>
<head>
<script language='javascript'>
var mypop;
function launchpop(lefichier){
mypop=window.open('./dl2.php?file='+lefichier,'width=240, height=97');
}
</script>
</head>
<body>
<a href="#" Onclick="launchpop('world%20map.gif');"> CLICK ME </a>
</body>
</html> |
je l'ai retranscrit sur ma page php et ca marche aussi, j'ai mis
self.opener.mypop.close()
dans ma page fille est ... ca marche pas ^^
et avec le code bidon d'en haut, sur dl2.php quand le met ca il ne m'affiche rien du tout
1 2 3 4 5 6 7 8 9 10
| <html>
<body>
<?php
echo "totoqsd";
$fichier = $_GET['file'];
echo $fichier;
echo "toto";
?>
</body>
</html> |
mais si je fais ca, la fenetre se ferme bien (logique)
1 2 3 4 5 6 7 8 9 10 11 12 13
| <html>
<body>
<?php
echo "totoqsd";
$fichier = $_GET['file'];
echo $fichier;
echo "toto";
?>
<script language="javascript">
self.opener.mypop.close();
</script>
</body>
</html> |
et si avec mon script original je fais ca:
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
| <?php
$fichier = $_GET['file'];
$chemin = 'upload/' . $fichier;
if (file_exists($chemin))
{
header('Content-disposition: attachment; filename="' . $fichier . '"');
header('Content-Type: application/force-download');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '. filesize($chemin));
header('Pragma: no-cache');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Expires: 0');
readfile($chemin);
}
else
{
$erreurFichier = 'le fichier "' . $fichier . '" n\'existe pas. Veuillez-nous excusez pour le désagrément.';
}
?>
<html>
<body>
<script language="javascript">
setTimeout("self.opener.mypop.close();",1000);
</script>
</body>
</html> |
ca marche pas non plus, cest parce que la page modifie le header ou quoi? oO
Partager