[html] Pagina downen

Pagina: 1
Acties:
  • 198 views sinds 30-01-2008
  • Reageer

  • MiezeL
  • Registratie: Augustus 2002
  • Laatst online: 08-04 08:40
Hey,

Hoe kan ik iemand dmv normale linkermuis klik een .htm file laten downloaden? En kan ik eventueel met java ofzo ook de pagina daarna van de server verwijderen?

Of php is ook goed maarjah dan moet ik dat eigenlijk ergens anders stellen.

  • HunterPro
  • Registratie: Juni 2001
  • Niet online
MiezeL schreef op 10 augustus 2002 @ 00:18:
Hey,

Hoe kan ik iemand dmv normale linkermuis klik een .htm file laten downloaden? En kan ik eventueel met java ofzo ook de pagina daarna van de server verwijderen?

Of php is ook goed maarjah dan moet ik dat eigenlijk ergens anders stellen.
gooi de MIME-settings op de server door de war, de browser ziet het niet als een te openen HTML-file en biedt 'm ter download aan.

Over dat ter beschikking stellen en verwijderen: ik zou de page in een DB zetten, en onderaan het openen van de page met PHP in de DB de flag zetten 'is_gelezen' oid. Laat je script bovenaan de page checken of is_gelezen != 1, dan mag ie niet gedownd worden (header schrijven met juiste error, of gewoon errorpage)

  • MiezeL
  • Registratie: Augustus 2002
  • Laatst online: 08-04 08:40
Hey dat over mime is idd wel handig thnx.

Nou die DB gaat niet lukken. Het is voor een klant waar 8 uur voor stond. Ik heb dus een simpele 'nep' DB gebouwd plain text. Die wordt gebracht op de site maar moet als download komen omdat het bedrijf offline hun lijst wil kunnen zien (dit ivm inbelverbinding).

Dus moet echt een hard command zijn ofzo die een file delete.

  • HunterPro
  • Registratie: Juni 2001
  • Niet online
MiezeL schreef op 10 augustus 2002 @ 00:37:
Hey dat over mime is idd wel handig thnx.

Nou die DB gaat niet lukken. Het is voor een klant waar 8 uur voor stond. Ik heb dus een simpele 'nep' DB gebouwd plain text. Die wordt gebracht op de site maar moet als download komen omdat het bedrijf offline hun lijst wil kunnen zien (dit ivm inbelverbinding).

Dus moet echt een hard command zijn ofzo die een file delete.
waarom moet dat ding dan gedelete worden :?

  • MiezeL
  • Registratie: Augustus 2002
  • Laatst online: 08-04 08:40
Emmm tsja. Ik heb eens zitten denken en denk ook wel dat het mogelijk is de file te cleanen. Geloof dat de klant eigenlijk niet meer nodig heeft.

Maare over dat MIME, gaat niet lukken. Het is namelijk gewoon een server bij een hostingsbedrijf. Dus is er geen andere manier een html te downloaden?

  • Thijsmans
  • Registratie: Juli 2001
  • Laatst online: 23-08 21:20

Thijsmans

⭐⭐⭐⭐⭐ (5/5)

nou ja, toch even het delete-commando voor php :)

PHP:
1
unlink ( "bestand.html" );

Privacy-adepten vinden op AVGtekst.nl de Nederlandse AVG-tekst voorzien van uitspraken en besluiten.


  • Thijsmans
  • Registratie: Juli 2001
  • Laatst online: 23-08 21:20

Thijsmans

⭐⭐⭐⭐⭐ (5/5)

MiezeL schreef op 10 augustus 2002 @ 11:08:
Emmm tsja. Ik heb eens zitten denken en denk ook wel dat het mogelijk is de file te cleanen. Geloof dat de klant eigenlijk niet meer nodig heeft.

Maare over dat MIME, gaat niet lukken. Het is namelijk gewoon een server bij een hostingsbedrijf. Dus is er geen andere manier een html te downloaden?
De headers veranderen:
http://www.php.net/manual/en/function.header.php
If you want the user to be prompted to save the data you are sending, such as a generated PDF file, you can use the Content-Disposition header to supply a recommended filename and force the browser to display the save dialog.

PHP:
1
2
header("Content-type: application/pdf");
header("Content-Disposition: attachment; filename=downloaded.pdf");
even aanpassen en klaar is kees :)

Privacy-adepten vinden op AVGtekst.nl de Nederlandse AVG-tekst voorzien van uitspraken en besluiten.


  • MiezeL
  • Registratie: Augustus 2002
  • Laatst online: 08-04 08:40
ow dus dit zooitje zet ik onderaan de pagina die de html creëerd na hij hem gesloten heeft en krijg je een download

  • Thijsmans
  • Registratie: Juli 2001
  • Laatst online: 23-08 21:20

Thijsmans

⭐⭐⭐⭐⭐ (5/5)

Dat kan ja, maar dan moet je dus eerst die html saven op de server (fopen, fwrite en fclose), en dan die headers naar buiten mikken. Zoals altijd bij headers, moet je hier ook opletten dat er niks voor de headers wordt verzonden naar output (echo + andere headers)

Privacy-adepten vinden op AVGtekst.nl de Nederlandse AVG-tekst voorzien van uitspraken en besluiten.


  • MiezeL
  • Registratie: Augustus 2002
  • Laatst online: 08-04 08:40
hmmz ja ic. Maar ik heb hem nu bovenaan gezet en er gebeurt nix

ik heb 2 pagina's

make.php (hierin opent hij en maakt hij de file)
test.htm (uiteindelijke file)

Waar, hoe en wat moet ik nu wat zetten om die test.htm als downloadable te krigjen

PS leuke vakantiefoto's

  • Thijsmans
  • Registratie: Juli 2001
  • Laatst online: 23-08 21:20

Thijsmans

⭐⭐⭐⭐⭐ (5/5)

Hoewel het niet mijn dagelijkse bezigheid is, gok ik dit:
PHP:
1
2
meuk om alles in die file te pleuren;
headers;

:) tsja, ik zal even kloten voor je...

Privacy-adepten vinden op AVGtekst.nl de Nederlandse AVG-tekst voorzien van uitspraken en besluiten.


  • MiezeL
  • Registratie: Augustus 2002
  • Laatst online: 08-04 08:40
nee je kan je headers nie onderaan doen. die moeten bovenaan want anders zijn ze al verzonden ofzo

ps kunnen we onderhand niet beter een chatsessie doen ofzo :P

  • Thijsmans
  • Registratie: Juli 2001
  • Laatst online: 23-08 21:20

Thijsmans

⭐⭐⭐⭐⭐ (5/5)

Ik heb het :)

Het was uiteindelijk makkelijker dan gedacht. Mijn eerste poging:
PHP:
1
2
3
4
5
6
header("Content-type: application/htm"); 
header("Content-Disposition: attachment; filename=blaat.html");

$file = fopen("blaat.html", 'w');
fputs($file, '<b>Blaat!</b>');
fclose($file);

Dat leverde een lege html-file op, die wel gedownload werd als blaat.html. Toen dacht ik dat hij misschien wel de output verstuurd:
PHP:
1
2
3
4
header("Content-type: application/htm"); 
header("Content-Disposition: attachment; filename=blaat.html");

echo "blaat";

En inderdaad, dit leverde een keurige html-file op met 'blaat' erin :)

That's the way it should be.
MiezeL schreef op 10 augustus 2002 @ 11:51:
nee je kan je headers nie onderaan doen. die moeten bovenaan want anders zijn ze al verzonden ofzo

ps kunnen we onderhand niet beter een chatsessie doen ofzo :P
Nee, dat hoeft niet. Headers kunnen overal worden geplaatst, zolang ervoor maar niks is ge-output. Dus als je hem na alle echo's zet (en/of andere headers) komt alles nog steeds dik voor mekaar.

In dit geval niet, omdat hij dit document eerst aanbied, en dan pas maakt.

[ Voor 0% gewijzigd door Thijsmans op 10-08-2002 11:58 . Reden: uitleggie ]

Privacy-adepten vinden op AVGtekst.nl de Nederlandse AVG-tekst voorzien van uitspraken en besluiten.


  • MiezeL
  • Registratie: Augustus 2002
  • Laatst online: 08-04 08:40
wooow thnx man. Hoef ik ook emteen neit meer al die echo en print commands te veranderen in fputs

Verwijderd

Zo kan dat inderdaad, maar ik zou toch een andere Content-Type opgeven dan de -niet bestaande- application/htm, namelijk de gebruikelijke content-type voor data: application/octet-stream

  • MiezeL
  • Registratie: Augustus 2002
  • Laatst online: 08-04 08:40
jah dat had ik zelf al gelezen op php.net

Maar wat schiet ik daar opzich mee op
Pagina: 1