[asp]FileName opvragen en inserten in db

Pagina: 1
Acties:

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 17:10
Hi, ik ben bezig met een image upload scrippie, zonder componenten o.i.d. Dat gaat goed, maar nu wil ik ook gelijk de extra gegevens die in het form staan in een database zetten. Dus ook inclusief de filename. Het uploaden ging dus goed, alleen dan blijft ie hangen (Server 500 error) tijdens het inserten in de database.
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
<%@ Language=VBScript %>
<%Option Explicit%>
<!-- #include file="upload.asp" -->
<%
'variabelen aangeven
Dim Uploader, File
Set Uploader = New FileUploader

' hier wordt het proces gestart
Uploader.Upload()

For Each File In Uploader.Files.Items
File.SaveToDisk "d:\wwwroot\cms_images\"
        
' Een simpele Write naar de browser ter controle... werkt...!
Response.Write "Bestandsnaam: " & File.FileName & "<br>"
Response.Write "Grootte: " & File.FileSize & " bytes<br>"
Response.Write "Type: " & File.ContentType & "<br>"
Response.Write "Omschrijving: " & Uploader.Form("omschrijving") & ""
Next

' variabelen aangeven
Dim url, omschrijving, door, datumtijd, data_source, con, sql_insert

' FFies de form fields tsjekken
Function ChkString(string)
If string = "" Then string = " "
ChkString = Replace(string, "'", "''")
End Function

' Zooi uit het form ophalen
'url komt niet uit het form maar uit het bovenstaande en dat lukt dus niet
url = Uploader.File(1).Filename
'dit komt dus wel uit het form
door = ChkString(Uploader.Form("door"))
omschrijving = ChkString(Uploader.Form("omschrijving"))
datumtijd = ChkString(Uploader.Form("datumtijd"))

data_source = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _ 
Server.MapPath("../database/content_td.mdb")
sql_insert = "insert into images (url, omschrijving, door, datumtijd) values ('" & _
url & "', '" & omschrijving & "', '" & door & "', '" & datumtijd & "')"

' maakt de connectie
Set con = Server.CreateObject("ADODB.Connection")
con.Open data_source
con.Execute sql_insert
' klaar is klara... afsluiten maar!
con.Close
Set con = Nothing
%>

Het gaat dus om dit regeltje...
url = File.Filename Dat is op dit moment nog de boosdoener.

Het is dus geen blob upload. Het wordt dus een upload naar de server, met de filename en andere gegevens in een database!

Ik heb het zo goed als maar van commentaar gezien.

Heart..pumps blood.Has nothing to do with emotion! Bored


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 17:10
ik heb het met het volgende geprobeerd:

url = Uploader.File(1).FileName

omdat ik dat ook ooit eens in een componentje heb gebruikt, maar dat gaat dus ook niet werken...

het is toch zeker wel mogelijk om de filename van het zojuist geuploade bestand op te vragen en te inserten in de db? want de gewone gegevens worden wel geinsert...

snap het ech nie meer :'(

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Ik weet niet welk component je gebruikt maar met aspupload vraag je het op met: File.Name

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 17:10
Op woensdag 07 november 2001 22:20 schreef Oizo het volgende:
Ik weet niet welk component je gebruikt maar met aspupload vraag je het op met: File.Name
ik heb het ooit eens met een component voor elkaar gekregen, maar ik gebruik nu geen component. Het wordt via asp alleen afgehandeld...

Heart..pumps blood.Has nothing to do with emotion! Bored


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 17:10
^niemand meer?

Heart..pumps blood.Has nothing to do with emotion! Bored


  • MrBrown
  • Registratie: Augustus 2000
  • Laatst online: 11-06 15:51

MrBrown

Reservoir Dog

Zolang we de specs/code van die uploader niet hebben kunnen ook wij alleen gokken....

Powered by Manetti (compiled by Jura)


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 17:10
Op donderdag 08 november 2001 09:22 schreef MrBrown het volgende:
Zolang we de specs/code van die uploader niet hebben kunnen ook wij alleen gokken....
het is geen componentje he...

1: een simpel html uploadform
2: die submit naar imageupload.asp
3: die heeft een include van upload.asp

Die upload.asp gebruikt het filesystem object (binary read en write enzo)

Maar de eerste response.write: Bestandsnaam & File.FileName leest de filename ook al uit...

Nu wil ik dus diezelfde filename ook gelijk in de db inserten...

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Gert
  • Registratie: Juni 1999
  • Laatst online: 05-12-2025
Filename meteen opvragen aan het begin van het script en in een variabele stoppen. Zelfde als met RS velden, die mag je officieel ook maar 1x opvragen, misschien hier ook zo?

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 17:10
Op donderdag 08 november 2001 09:39 schreef Gert het volgende:
Filename meteen opvragen aan het begin van het script en in een variabele stoppen. Zelfde als met RS velden, die mag je officieel ook maar 1x opvragen, misschien hier ook zo?
dus zoiets als:
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
'variabelen aangeven
Dim Uploader, File
Set Uploader = New FileUploader
' hier wordt het proces gestart
Uploader.Upload()

For Each File In Uploader.Files.Items
File.SaveToDisk "d:\wwwroot\cms_images\"

Dim bestandsnaam
bestandsnaam = File.FileName
        
' Een simpele Write naar de browser ter controle... werkt...!
Response.Write "Bestandsnaam: " & bestandsnaam & "<br>"
Response.Write "Grootte: " & File.FileSize & " bytes<br>"
Response.Write "Type: " & File.ContentType & "<br>"
Response.Write "Omschrijving: " & Uploader.Form("omschrijving") & ""
Next

' variabelen aangeven
Dim url, omschrijving, door, datumtijd, data_source, con, sql_insert

...checkstring zit hier ingekort...

url = bestandsnaam
'dit komt dus wel uit het form
door = ChkString(Uploader.Form("door"))
.....

Heart..pumps blood.Has nothing to do with emotion! Bored


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 17:10
darn... was ut dus ook niet... of ik maak mijn var verkeerd aan...

die var is kan toch wel gewoon?
code:
1
2
Dim bestandsnaam
bestandsnaam = File.FileName

Nog 1 dingetje (redelijk ASP n00b dus :))

Die file.filename is dat nu een string? of een variabele?
ik denk als ik dat weet dat ik weer iets gerichter kan gaan zoeken...

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Basszje
  • Registratie: Augustus 2000
  • Laatst online: 12:17

Basszje

Reisvaap!]

Btw als je Internal server error krijgt dan moet je HTTP Friendly error messages uitzetten in je Xplorer preferences.

Beware of listening to the imposter; you are undone if you once forget that the fruits of the earth belong to us all, and the earth itself to nobody.


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 17:10
Op donderdag 08 november 2001 14:24 schreef BaSSzje het volgende:
Btw als je Internal server error krijgt dan moet je HTTP Friendly error messages uitzetten in je Xplorer preferences.
hier had ik idd wat aan...

hij geeft nu dus aan dat ie een include file nie kan vinden

Heart..pumps blood.Has nothing to do with emotion! Bored

Pagina: 1