[ASP] Creeren text bestand en zippen

Pagina: 1
Acties:

  • Dutch_guy
  • Registratie: September 2001
  • Laatst online: 24-07 13:40
Ik wil dat als men op een link klikt dat men de specificaties van een boot kan downloaden als .zip bestand.

Het zippen is geen probleem, dat kan ik oplossen door een commandline tooltje te gebruiken dat via een asp pagina benaderd wordt.
Tevens kan ik dan de foto's toevoegen die behoren bij de juiste boot.

Mijn probleem is echter de omschrijving van de boot. Er zijn een stuk of 6 velden in de database waar ik de omschrijving uit moet opbouwen.
Ik wil dat deze omschrijving als een text bestand toegevoegd wordt aan het zip bestand.

Ik denk dat op te lossen door iedere keer dat er gedownload moet worden dat er op de server een text bestand wordt aangemaakt en dat de omschrijving daarin wordt gevuld. Vervolgens wordt het textbestand opgenomen in het zip bestand.

Mijn vraag (he, he): is dit een goede manier om zo het text bestand aan te bieden? Het betekent wel dat men vrij veel rechten krijgt op de server om een text bestand aan te kunnen maken.

Is er wellicht een makkelijkere manier om dit te doen ?

Pay peanuts get monkeys !


  • Coolhva
  • Registratie: Juni 2003
  • Laatst online: 02-08 09:32

Coolhva

Dr. Zero Trust

Als Comment in de zip gooien?

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Als je het perse op deze manier wilt doen, is denk ik de enige mogelijkheid wat je al beschrijft.

Op zich hoeft het geen probleem te zijn dan een account schrijfrechten heeft. Ik zou wel deze directory buiten de webroot houden.

/me p_de_b zou zelf een .pdf genereren, en deze aan de bezoeker tonen

Oops! Google Chrome could not find www.rijks%20museum.nl


  • Dutch_guy
  • Registratie: September 2001
  • Laatst online: 24-07 13:40
P_de_B schreef op 22 August 2003 @ 12:58:
Als je het perse op deze manier wilt doen, is denk ik de enige mogelijkheid wat je al beschrijft.

Op zich hoeft het geen probleem te zijn dan een account schrijfrechten heeft. Ik zou wel deze directory buiten de webroot houden.

/me p_de_b zou zelf een .pdf genereren, en deze aan de bezoeker tonen
PDF genereren doe ik al. :)

Echter men moet ook de mogelijkheid hebben om zelf de text / layout en plaatjes te veranderen.

Pay peanuts get monkeys !


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 21-08 18:29
Gewoon een HTML document produceren? Dan gebruik je zo'n WYSIWYG editior en klaar is dutch_guy?

  • Dutch_guy
  • Registratie: September 2001
  • Laatst online: 24-07 13:40
djluc schreef op 22 August 2003 @ 13:50:
Gewoon een HTML document produceren? Dan gebruik je zo'n WYSIWYG editior en klaar is dutch_guy?
Nope, gaat niet lukken. De text zal bewerkt gaan worden door total noobs. Tevens zullen veel mensen de tekst en plaatjes in een Word document willen plakken.

Nu ik erover nadenk, misschien is het wel handiger om on-the-fly een Word document te genereren.

Pay peanuts get monkeys !


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 21-08 18:29
Dutch_guy schreef op 22 August 2003 @ 16:09:Nope, gaat niet lukken. De text zal bewerkt gaan worden door total noobs. Tevens zullen veel mensen de tekst en plaatjes in een Word document willen plakken.

Nu ik erover nadenk, misschien is het wel handiger om on-the-fly een Word document te genereren.
Waarom zou dat niet gaan lukken? Je kunt bijvoorbeeld 2 divjes maken, in 1 kunnen ze de tekst tikken en in de 2de mogen ze een plaatje slepen. Daarna kun je in PHP er een mooi documentje van maken. Als je word documenten wilt maken moest je ook word installeren op je server d8 ik.

  • Dutch_guy
  • Registratie: September 2001
  • Laatst online: 24-07 13:40
Ok, het is gelukt om waarden uit de database te schrijven naar een textbestand, waarna het textbestand tezamen met de plaatjes ingezipt wordt. Vervolgens wordt het .txt bestand verwijderd.

De code die ik hiervoor gebruik en perfect werkt:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
<%
  '------------------- Textbestand maken -------------------
  Dim objFSO, objTS
  Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

  Set objTS = objFSO.CreateTextFile("D:\" & refnumber & ".txt")

  'Schrijf de waarden uit de database naar het text bestand
  objTS.WriteLine ("GENERAL")
  objTS.WriteLine general
  objTS.WriteBlankLines(1)
  
  objTS.WriteLine ("ACCOMODATION")
  objTS.WriteLine accomodation
  objTS.WriteBlankLines(1)
  
  objTS.WriteLine ("MACHINERY")
  objTS.WriteLine machinery
  objTS.WriteBlankLines(1)
  
  objTS.WriteLine ("NAVIGATION")
  objTS.WriteLine navigation
  objTS.WriteBlankLines(1)
  
  objTS.WriteLine ("EQUIPMENT")
  objTS.WriteLine equipment
  objTS.WriteBlankLines(1)
  
  objTS.WriteLine ("RIGGING")
  objTS.WriteLine rigging
  objTS.WriteBlankLines(1)
  
  objTS.WriteLine ("PARTICULARS")
  objTS.WriteLine particulars
  objTS.WriteBlankLines(1)
  
  objTS.Close
  Set objTS = Nothing
  Set objFSO = Nothing
%>
<%
'------------------- Zipbestand maken -------------------
set zip = server.createobject("CGZipLibrary.CGZipFiles")
zip.ZipFileName = "\" & refnumber & ".zip"
zip.addfile("\" & refnumber & ".txt")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & ".jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_1.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_2.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_3.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_4.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_5.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_6.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_7.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_8.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_9.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_10.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_11.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_12.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_13.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_14.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_15.jpg")
zip.addfile("\inetpub\wwwroot\winbroker\images\thumbnails\" & refnumber & "_16.jpg")

If  Zip.MakeZipFile <> 0 then
   response.write Zip.GetLastMessage
End If

set Zip = nothing
%>
<%
'------------------- Textbestand verwijderen -------------------
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
objFSO.DeleteFile "\" & refnumber & ".txt"
Set objFSO = Nothing
%>



Mijn vraag:

Hoe zorg ik er nu voor dat het gezipte bestand als download beschikbaar wordt gesteld aan de gebruiker?

Dus men klikt op een link, bovenstaande code wordt uitgevoerd, en vervolgens moet deze direct te downloaden zijn. nu kan ik wel op die pagina een link zetten naar dat bestand, maar mooier is als het meteen ter download wordt aangeboden.

Iemand een idee ?

Pay peanuts get monkeys !


  • nxt
  • Registratie: November 2001
  • Laatst online: 12-06 10:00

nxt

Dutch_guy schreef op 22 augustus 2003 @ 19:01:
...
Hoe zorg ik er nu voor dat het gezipte bestand als download beschikbaar wordt gesteld aan de gebruiker?

Dus men klikt op een link, bovenstaande code wordt uitgevoerd, en vervolgens moet deze direct te downloaden zijn. nu kan ik wel op die pagina een link zetten naar dat bestand, maar mooier is als het meteen ter download wordt aangeboden.

Iemand een idee ?
mijn ASP/vbscript is een beetje roestig, maar er is toch iets als
Response.Redirect
en als je ze dan redirect naar de zipfile in plaats van de link te laten zien, lijkt me dat de file ter download aangeboden moet worden door de browser

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 21-08 18:29
Je moet de juiste header naar de browser sturen, tenminste dat is zo in PHP. Ik begrijp het trouwens niet helemaal, eerst moeten de gebruikers plaatjes in documenten gebruiken en opmaken en nu zip je gewoon een tekst en wat afbeeldingen :?

  • Dutch_guy
  • Registratie: September 2001
  • Laatst online: 24-07 13:40
nxt schreef op 22 August 2003 @ 19:17:
[...]

mijn ASP/vbscript is een beetje roestig, maar er is toch iets als
Response.Redirect
en als je ze dan redirect naar de zipfile in plaats van de link te laten zien, lijkt me dat de file ter download aangeboden moet worden door de browser
Ja, je hebt natuurlijk vokomen gelijk! |:(

Thanks!

Pay peanuts get monkeys !


  • Sponge
  • Registratie: Januari 2002
  • Laatst online: 15-08 11:47

Sponge

Serious Game Developer

Hmm, als je van de pagina naar Word wilt plakken, is heel misschien:
http://www.interactivetoo.../htmlarea/index.html#demo

Deze WYSIWYG editor toch nog een idee. De laatste keer dat ik het testte werkte word<>dit ding redelijk goed :). Naja, gewoon nog een ideetje waar je misschien iets aan hebt :)

  • Dutch_guy
  • Registratie: September 2001
  • Laatst online: 24-07 13:40
Grappig, dat is precies de WYSIWYG editor die ik altijd gebruik. Maar in dit geval werkt datgene dat ik nu bedacht heb prefect.

Pay peanuts get monkeys !

Pagina: 1