Enregistrer une page web dynamique [Résolu]

Signaler
Messages postés
3
Date d'inscription
jeudi 9 novembre 2006
Statut
Membre
Dernière intervention
24 juillet 2007
-
Messages postés
26
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
28 août 2012
-
Bonjour à tous,

J'ai besoin d'aide concernant l'enregistrement d'une page web dynamique, je m'explique :
J'ai concu une page web, jusque la rien de bien extraordinaire
Dans cette page j'ai quelques objets comme des checkbox par exemple qui modifie la classe css de certaines <TD>
Et j'ai besoin d'enregistrer grâce à un input ou img le rendu de cette page.

voici mon code :
function sauvegarder()
{
    document.execCommand('SaveAs','1','MaPageWeb.html');
}

Le hic c'est que la page qui est enregistrée est la page source et non celle qui est à l'écran.
Ni l'état des chekbox ni la nouvelle classe sur mes balises n'est conservée.

Quelqu'un aurait il une idée ou bien une source pour me dépanner svp ?

Merci

5 réponses

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
34
Bonjour,

    on peut faire,
   
    document.getElementsByTagName('html')[0].outerHTML
            c'est le "contenu actuel" de la page...
             ( attention aux ".js", aux ".css"...  quand même ! )

    donc avec l'activeX FileSystemObject :
    ( je ne dis pas que c'est exclusif IE, mais plus compliqué avec FF ... )
      
        var fso=new ActiveXObject("Scripting.FileSystemObject");
        var ts=fso.OpenTextFile("fichier voulu",2,false);
        ts.Write(document.getElementsByTagName('html')[0].outerHTML);
        ts.close();

<hr />


Cordialement                Bul    
Messages postés
3
Date d'inscription
jeudi 9 novembre 2006
Statut
Membre
Dernière intervention
24 juillet 2007

Mon problème était d'enregistrer ma page Web en tant que fichier .html en tenant compte des états des objets et des changement de css. Problème résolu, voici mon code :

// Sauvegarde de ma page dans le même répertoire que ma page source
function sauver()
{
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    var fileName = 'MaPage.htm';
       
    var url = unescape(self.location.pathname);
    var adr = (fso.GetExtensionName(url).toLowerCase()!='hta')?1:0;
    var fileSourcePath = fso.GetParentFolderName(url).substr(adr);
    var fileNamePath = fileSourcePath + '\\' + fileName;
       
    fso.FileExists(fileNamePath)
    if (!fso.FileExists(fileNamePath))
    {
        var file = fso.CreateTextFile(fileNamePath);
        file.Write(document.getElementsByTagName('html')[0].outerHTML);
        file.close();
        alert('Sauvegarde effectuée.');
    }
    else
    {
        if(confirm(fileNamePath + ' existe déjà.\nVoulez-vous le remplacer ?'))
        {
            var file = fso.CreateTextFile(fileNamePath, true);
            file.Write(document.getElementsByTagName('html')[0].outerHTML);
            file.close();
            alert('Sauvegarde effectuée.');
        }
    }
}

Merci à Bultez de m'avoir mis sur la bonne voix !!
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
34
nickel si ça baigne et merci du retour.
<hr />


Cordialement                Bul        
Messages postés
26
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
28 août 2012

super ton code, mais j'ai un soucis, c'est que voila l'url de ma page  à l'écran
http://acrnmp.../ACR/test/fcmo.php?cle=26305 et là, il ne veut pas ..
D'ou cela peut-il venir?
j'ai essayé de le pousser à enregistrer dans le FTP il ne veut pas non plus.

En fait ce que je voudrais au final c'est enregistrer cette page modifiée dans un dossier du serveur (cette page étant enregistrée avec pour titre un numéro qui se trouve dans une chekbox de celle-ci) tout en envoyant un lien vers celle ci sur une page web..
Messages postés
26
Date d'inscription
mercredi 28 septembre 2005
Statut
Membre
Dernière intervention
28 août 2012

Excuse , ne clique pas sur le lien, c'est juste un exemple