Enregistrer une page web dynamique [Résolu]

sixool 3 Messages postés jeudi 9 novembre 2006Date d'inscription 24 juillet 2007 Dernière intervention - 18 juil. 2007 à 14:59 - Dernière réponse : fthem 26 Messages postés mercredi 28 septembre 2005Date d'inscription 28 août 2012 Dernière intervention
- 25 juil. 2007 à 09:42
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
Afficher la suite 

5 réponses

Répondre au sujet
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 18 juil. 2007 à 15:26
+3
Utile
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    
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_bultez
sixool 3 Messages postés jeudi 9 novembre 2006Date d'inscription 24 juillet 2007 Dernière intervention - 24 juil. 2007 à 09:56
+3
Utile
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 !!
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de sixool
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 24 juil. 2007 à 10:15
0
Utile
nickel si ça baigne et merci du retour.
<hr />


Cordialement                Bul        
Commenter la réponse de cs_bultez
fthem 26 Messages postés mercredi 28 septembre 2005Date d'inscription 28 août 2012 Dernière intervention - 25 juil. 2007 à 09:39
0
Utile
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..
Commenter la réponse de fthem
fthem 26 Messages postés mercredi 28 septembre 2005Date d'inscription 28 août 2012 Dernière intervention - 25 juil. 2007 à 09:42
0
Utile
Excuse , ne clique pas sur le lien, c'est juste un exemple
Commenter la réponse de fthem

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.