Avatar billede cygnet Praktikant
20. august 2003 - 17:06 Der er 19 kommentarer og
1 løsning

Simpel form med Persits.Upload.1

Jeg har et problem. Jeg har leget en del med Persits.Upload.1 men har altid bare brugt en standard. Nu er problemet at jeg skal have den indbygget i en eksisterende form.

Denne form hedder Tilfoj

Altså

<form name="tilfoj" method="post" action="?se=emne&id_emner=<% response.write "" & request("ID_emner") & "" %>">

Og har et submit felt der hedder

<input type="submit" name="Tilfoj" value="Opret emne">

Er det til at bygge en simpel upload funktion i dette. Den skal bare gemme en ønsket fil i en billed mappe og stien i en db.

Ved godt dette er lidt af en opgave - men har rodet med det to-tre timer nu og er ved at blive lettere irreteret.

Jeg smider 100 point for den der kan hjælpe mig lidt på vej.

/cygnet
Avatar billede eagleeye Praktikant
20. august 2003 - 17:38 #1
Ja det kan du da.

Du skal hvade tilføjet et <input type="file" name="file1">
input felt i formen.

Der udover skal du havde lave din form tag om så den har dette med: ENCTYPE="multipart/form-data":

<form name="tilfoj" method="post" action="?se=emne&id_emner=<% response.write "" & request("ID_emner") & "" %>" ENCTYPE="multipart/form-data">

Til at starte med..

Så skal koden der gemmer i db også laves (om).
Avatar billede eagleeye Praktikant
20. august 2003 - 17:57 #2
Det mulig du er nød til at flytte dine QueryStrngs til hidden felter men umiddelbart bør de virker som normalt.

Eks på form.:

<form name="tilfoj" method="post" action="?se=emne&id_emner=<% response.write "" & request("ID_emner") & "" %>" ENCTYPE="multipart/form-data">

<input type="file" name="file1"><br>
<input type="text" name="navn"><br>
<input type="text" name="bynavn"><br>
<input type="submit" name="Tilfoj" value="Opret emne">
</form>



Eks på kode:

<%
Set Upload = Server.CreateObject("Persits.Upload.1")
Count = Upload.SaveToMemory

'Gem filen
if Count >= 1 then
  Set file = Upload.Files("file1")
 
  filnavn = "/images/" & file.name
  file.SaveAs filnavn
end if

navn = Upload.Form("navn")
bynavn = Upload.Form("bynavn")


SQL = "INSERT INTO xxx (navn, bynavn, fil) VALUES ('" & navn & "', '" & bynavn & "', '" & filnavn & "')"

.. og så noget kode til at connecte til db og sætte ind.
%>
Avatar billede cygnet Praktikant
20. august 2003 - 17:57 #3
Eagle - kan du rette den her til så det virker

http://www.jonsen.dk/cygshop/forum.txt
Avatar billede eagleeye Praktikant
20. august 2003 - 18:05 #4
Kigger lige på den.
Avatar billede cygnet Praktikant
20. august 2003 - 18:09 #5
takker - du er en helt
Avatar billede eagleeye Praktikant
20. august 2003 - 18:12 #6
Du har to filer på formen skal du havde det?
Hvor er folderen log i forhold til hvor ASP filen ligger?
Avatar billede eagleeye Praktikant
20. august 2003 - 18:17 #7
Prøv først med denne:
http://www.eagleeye.dk/eks/forum.txt
Avatar billede cygnet Praktikant
20. august 2003 - 18:41 #8
Persits.Upload.1 error '800a0005'

The system cannot find the path specified.

/cygshop/forum.asp, line 29
Avatar billede cygnet Praktikant
20. august 2003 - 18:41 #9
behøver kun at være én fil.
Avatar billede cygnet Praktikant
20. august 2003 - 18:44 #10
arh min fejl - men nu siger den så


Request object error 'ASP 0208 : 80004005'

Cannot use generic Request collection

/cygshop/forum.asp, line 47

Cannot use the generic Request collection after calling BinaryRead.
Avatar billede eagleeye Praktikant
20. august 2003 - 18:44 #11
Det er i denne linje:

Upload.Save "log\"

det er hvor skal filen gemmen og hvor ligger den folder i forhold til ASP filen eller root?
Avatar billede cygnet Praktikant
20. august 2003 - 18:45 #12
Men det virker skam - problemet er jo bare nu at den så gå videre med den gamle kode og derhar vi det der request...
Avatar billede eagleeye Praktikant
20. august 2003 - 18:48 #13
Prøv at lave en redirect efter linje med

  conntemp.execute(sql)

Sådan den reloader siden.:

  Response.Redirect(Request.ServerVariables("SCRIPT_NAME")&"?se=emne&id_emner=" & emne)
Avatar billede cygnet Praktikant
20. august 2003 - 19:02 #14
tror det fungerer nu - nu skal jeg bare lige have gemt filnavnet i databasen - hvordan får jeg bare kaldt det `?

Prøvet dette . men går ikke helt
filnavn = File.FileName
Avatar billede eagleeye Praktikant
20. august 2003 - 19:10 #15
Prøv med dettE:


  Set Upload = Server.CreateObject("Persits.Upload.1")

  Upload.OverwriteFiles = False ' Generate unique names
  Upload.SetMaxSize 1048576 ' Truncate files above 1MB

  'Hvor ligger folderen log i for hold til denne ASP fil ?
   
  Upload.Save "xxxxxxxxx"
 
  set file = Upload.Files("file1")  'eller Upload.Files(1)
  filnavn = File.Filename 

  bruger = Upload.Form("bruger")
  emne = Upload.Form("emne")
   
  overskrift = Upload.Form("overskrift")
  overskrift = Replace(overskrift, "'", "")

  indhold = Upload.Form("indhold")
  indhold = Replace(indhold, vbCrLf, "<br>")
  indhold = Replace(indhold, "'", "")
   
  SQL = "INSERT INTO [forum_spg] (bruger,id_emner,overskrift,indhold,filnavn) VALUES (" & bruger & "," & emne & ", '" & overskrift & "', '" & indhold & "', '" & filnavn & "')"
  conntemp.execute(sql)
 
  Response.Redirect(Request.ServerVariables("SCRIPT_NAME")&"?se=emne&id_emner=" & emne)
 
end if
Avatar billede cygnet Praktikant
20. august 2003 - 19:22 #16
perfekt - arh det var en stor hjælp.
Avatar billede eagleeye Praktikant
20. august 2003 - 19:36 #17
Ok, skal jeg så svar ;)?
Avatar billede eagleeye Praktikant
20. august 2003 - 19:37 #18
...prøver igen, jeg skal vist havde et "Simpel brug af mus" kursus ;)
Avatar billede cygnet Praktikant
20. august 2003 - 20:27 #19
*smiler* bare tage en Shoot spil - eller noget i den stil.

Men takker mange gange for hjælpen. Surt azero server driller for vildt lige nu - så kan ikke rigtig arbejde videre med det. Men tak tak.
Avatar billede eagleeye Praktikant
20. august 2003 - 20:37 #20
Jeg har også azero, og jeg modtager "næsten" ikke mails, kun en gang i mellem kommer der en enkelt igennem, sådan har det være hele dagen ;(
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
Kurser inden for grundlæggende programmering

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