IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

window auto close


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Par défaut window auto close
    Salut,

    mon probleme est le suivant, sur une page pour forcer le téléchargement d'un fichier, txt ou pdf ou autre, j'utilise une page annexe... par contre que j'accepte ou pas le téléchargement du fichier, la page de se ferme pas, mon script est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <?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);
         echo "<script language='javascript'>self.close();</script>";
     }
     else
     {
         $erreurFichier = 'le fichier "' . $fichier . '" n\'existe pas. Veuillez-nous excusez pour le désagrément.';
     }
     
    ?>
    toute ces solutions ne marchent pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    windows.close();
    self.close();
    setTimeout("self.close();",1000)
    auriez vous une solution?

    Merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10
    Par défaut
    En Javascript c'est:
    window.close()
    et non windows.close() !!!

    @+

  3. #3
    Membre éclairé Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Par défaut
    faute de frape dans mon post, window.close(); ne marche pas

    ps : je la lance avec ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    onClick=\"window.open('./dl.php?file=$fichier','Erreur','toolbar=0,
     location=0, directories=0, status=0, scrollbars=0, resizable=0, 
    copyhistory=0, menuBar=0, width=240, height=97');return(false)\"

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10
    Par défaut
    Est ce que le debuggeur javascript t'annonce une erreur ou pas ??

  5. #5
    Membre éclairé Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Par défaut
    non pas d'erreur sinon j'aurais su d'ou ca viens!

    ps: par contre window.close(); marche sous IE mais pas sous FF!

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    attibues ton window open à une variable dans la page mère ...
    puis depuis la page fille appelle un truc du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    self.opener.mavariable.close()
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre éclairé Avatar de avogadro
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 412
    Par défaut
    idem, page mere :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <script language="javascript">
     
    var mavariable = "onClick=\"window.open('./dl.php?file=$fichier','Erreur','toolbar=0, location=0, directories=0, status=0, scrollbars=0, resizable=0, copyhistory=0, menuBar=0, width=240, height=97');";
     
    </script>
    page générée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    <?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);
         echo "<script language='javascript'>self.opener.mavariable.close();</script>";
     }
     else
     {
         $erreurFichier = 'le fichier "' . $fichier . '" n\'existe pas. Veuillez-nous excusez pour le désagrément.';
     }
     
    ?>

Discussions similaires

  1. Auto Close = True or False ?
    Par zinzineti dans le forum Administration
    Réponses: 3
    Dernier message: 07/10/2010, 10h10
  2. Problème avec window.close()
    Par Didje dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 13/12/2005, 17h32
  3. window.close();
    Par 12_darte_12 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 18/10/2005, 14h37
  4. après un window.close() la page se réouvre toute seule???
    Par linux dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 31/08/2005, 17h29
  5. On Windows Closing ???
    Par BainE dans le forum MFC
    Réponses: 4
    Dernier message: 29/08/2005, 12h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo