Avatar billede sansalvador Nybegynder
25. januar 2005 - 19:20 Der er 7 kommentarer og
1 løsning

Generer og download HTML fil med header

Nu har jeg ledt efter dette spørgsmål, men det ser ikke ud til at nogen har spurgt efter det før (eller så er det bare gemt godt ;)).

Jeg har en stump kode generet i PHP, som indeholder en masse html..

Den ligger jeg ind i en variabel. Det tekst der så ligger i denne variabel, vil jeg gerne have lagt ud i en html-fil.

Det kan man jo gøre på 2 måder (håber jeg):

1) Vis kildekoden og kopier det relavante kode, der bliver printet fra min variabel, over i en ny-lavet html fil på min egen computer.

2) Tryk på en knap, og "vupti", indholdet af variablen bliver lagt ud i en ny-genereret (fra PHP siden) HTML fil, som så kan downloades.

Der skal laves noget med header() - Det har jeg næsten styr på, men hvordan får man genereret en html-fil, som så samtidigt skal lægges til download.

Og er dette overhovedet muligt? :)
Hvis man I phpmyadmin kan generere en zip-fil med database-contekst, så burde dette også være muligt.

Tak på forhånd.
Avatar billede sansalvador Nybegynder
25. januar 2005 - 19:21 #1
Det skal måske lige siges, at ved punkt 1 [1)], mente at man kunne gå ind i sin browser, og se det færdigproducerede resultat, OG SÅ få vist kildekoden i html.
Avatar billede detox Nybegynder
25. januar 2005 - 19:40 #2
Hvis du fx har din generede html kode i: $html kan du bruge:

header('Content-Type: application/download');
header('Content-Disposition: attachment; filename=test.htm');
echo $html;
Avatar billede sansalvador Nybegynder
25. januar 2005 - 20:00 #3
Hmm .. Ved ikke helt hvad jeg gør galt, men det virker ikke:

Den viser bare indholdet af $html. Den tager vist ikke hensyn til headersene...
Avatar billede detox Nybegynder
25. januar 2005 - 20:04 #4
og du har vel ikke nogen former for output inden de 2 headers?
Avatar billede sansalvador Nybegynder
25. januar 2005 - 20:05 #5
Der er intet andet i filen end, det du skrev...
Avatar billede detox Nybegynder
25. januar 2005 - 20:09 #6
Her er et eksempel, som hvert fald virker her:

<?
$html = <<<EOD
<html>
<head>
<title>TITEL</title>
</head>
<body>
<p>hej hej</p>
</html>
EOD;

header('Content-Type: application/download');
header('Content-Disposition: attachment; filename=test.htm');
echo $html;
?>
Avatar billede sansalvador Nybegynder
25. januar 2005 - 22:13 #7
Tak skal du have ! Mit problem var, at jeg glemte at bruge $_POST['html'].

Det virker, som det skal :) Læg venligst et svar.
Avatar billede detox Nybegynder
25. januar 2005 - 22:31 #8
Ok, velbekommen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB