[ASP] filename change by uploading

Pagina: 1
Acties:
  • 41 views sinds 30-01-2008

  • wd200
  • Registratie: Juni 2005
  • Laatst online: 22:34
ik heb een upload script voor asp ergens van het www geplukt.
deze werkt perfect ik zou alleen graag zien dat de naam van deze file gelijk is aan een variabele

script dat ik gebruik is wordt vanuit een form gestuurd (dus niet zo lastig en geen moeite om te posten lijkt mij)

naar uploadtekst.asp

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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
<%@ Language=VBScript %>
<% 
option explicit 
Response.Expires = -1
Server.ScriptTimeout = 600
%>
<!-- #include file="freeaspupload.asp" -->
<!-- #include file="style.css" -->

<div id ="pagina">
<%
    
    
    
    
        
    Dim strCon
    Dim objCon
    Dim accessDB
    dim SQL
    dim objAdd


    accessDB = server.mappath("database.mdb")
    strCon = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE="
    strCon = strCon & accessDB & ";"

    ' Maak een serverobject aan voor de connectie (ObjectConnectie -> objCon)
    ' Open de verbinding met de database. Voor objCon wordt er een
    ' verbinding geopend met opgegeven database.
    Set objCon = Server.CreateObject ( "ADODB.Connection" )
    objCon.Open strCon
    
    
'vraag maximale waarde op van de hoogste id en doet hier 1 bij voor ID en FILENAME
Dim maximaal, objRec, id

SQL="select max(id) as maximaal from data"
    set objRec = objCon.execute(SQL)

maximaal = objRec.Fields("maximaal")


    id = maximaal+1

    
    
    
    
    

' ****************************************************
' Change the value of the variable below to the pathname
' of a directory with write permissions, for example "C:\Inetpub\wwwroot"
  Dim uploadsDirVar
  uploadsDirVar = "c:\inetpub\wwwroot\wesley\scholtens\images" 
' ****************************************************

' Note: this file uploadTester.asp is just an example to demonstrate
' the capabilities of the freeASPUpload.asp class. There are no plans
' to add any new features to uploadTester.asp itself. Feel free to add
' your own code. If you are building a content management system, you
' may also want to consider this script: http://www.webfilebrowser.com/

function OutputForm()
%>

<%
end function


function SaveFiles
    Dim Upload, fileName, fileSize, ks, i, fileKey

    Set Upload = New FreeASPUpload
    Upload.Save(uploadsDirVar)

    ' If something fails inside the script, but the exception is handled
    If Err.Number<>0 then Exit function

    SaveFiles = ""
    ks = Upload.UploadedFiles.keys
    if (UBound(ks) <> -1) then

        for each fileKey in Upload.UploadedFiles.keys
            filename = Upload.UploadedFiles(fileKey).FileName
        
    

        
        next
    else
        SaveFiles = "The file name specified in the upload form does not correspond to a valid file in the system."
    end if

    
    
    
    %>
    <%
dim naam, prijs, tekst, pagina

 
 naam = Upload.Form("naam")
 prijs = Upload.Form("prijs")

     tekst = Upload.Form("DESCR")
     pagina = Upload.Form("pagina")
     
     

     


%>

<h3> De volgende gegevens zijn met succes ingevoegd </h3>
<table width="500" border="0">



<tr>
     <td>naam:</td>
    <td><input type="text" name="naam" maxlength="27" size ="30" value="<%= naam %>"></td><td></td><td><img src="images/<%=filename %>" width="112" height="84"></td>

  </tr>
    <tr>
    <td>Prijs</td>
<td><input type="text" name="prijs" value="<%= prijs %>"></td>
  </tr>
      <tr>
    <td>pagina</td>
<td><input type="text" name="pagina" value="<%= pagina %>"></td>
  </tr>
  
</table>
beschrijving:<BR><TEXTAREA NAME="DESCR" rows="6" cols="35"><%= tekst %></TEXTAREA><BR>
 
 

    </table>
<geldig>U wordt zo terug gestuurd een ongeblik geduld</geldig>
    <%
    

    
    

    
    
    
                                                                                                    


    ' De SQL query die de gegevens in de database zet. De SQL hieronder is opgedeeld ' in stukjes om het duidelijker te maken. Alles kan gewoon achterelkaar.
        SQL = "INSERT INTO data(naam, filename, tekst, prijs,pagina,id) VALUES('"&naam&"','"&filename&"','"&tekst&"','"& "€" +  prijs & "','"&pagina&"','"&id&"')"

    ' Maak een object objAdd aan. Open dit record met bepaalde waarden
    set objAdd = objCon.execute(SQL)


    ' Sluit de recordset en de verbinding af omdat we die niet meer gebruiken.
    Set objAdd = Nothing
    objCon.close
    set objCon = Nothing

%>
    
    
    
    
    
    
    
    
    
    
    
    <%
end function


%>


<BODY>

<br><br>

<%
Dim diagnostics
if Request.ServerVariables("REQUEST_METHOD") <> "POST" then
    diagnostics = TestEnvironment()
    if diagnostics<>"" then
        response.write "<div style=""margin-left:20; margin-top:30; margin-right:30; margin-bottom:30;"">"
        response.write diagnostics
        response.write "<p>After you correct this problem, reload the page."
        response.write "</div>"
    else
        response.write "<div style=""margin-left:150"">"
        OutputForm()
        response.write "</div>"
    end if
else
    response.write "<div style=""margin-left:150"">"
    OutputForm()
    response.write SaveFiles()
    response.write "<br><br></div>"
end if

%>

<meta http-equiv="refresh" content="4;URL=opvragen.asp" /> 
</div>
</BODY>
</HTML>


(de volgende wordt geinclude)
freeaspupload.asp


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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
<%@ Language=VBScript %>
<% 
option explicit 
Response.Expires = -1
Server.ScriptTimeout = 600
%>
<!-- #include file="freeaspupload.asp" -->
<!-- #include file="style.css" -->

<div id ="pagina">
<%


    Dim strCon
    Dim objCon
    Dim accessDB
    dim SQL
    dim objAdd


    accessDB = server.mappath("database.mdb")
    strCon = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE="
    strCon = strCon & accessDB & ";"

    ' Maak een serverobject aan voor de connectie (ObjectConnectie -> objCon)
    ' Open de verbinding met de database. Voor objCon wordt er een
    ' verbinding geopend met opgegeven database.
    Set objCon = Server.CreateObject ( "ADODB.Connection" )
    objCon.Open strCon
    
    
'vraag maximale waarde op van de hoogste id en doet hier 1 bij voor ID en FILENAME
Dim maximaal, objRec, id

SQL="select max(id) as maximaal from data"
    set objRec = objCon.execute(SQL)

maximaal = objRec.Fields("maximaal")


    id = maximaal+1


' ****************************************************
' Change the value of the variable below to the pathname
' of a directory with write permissions, for example "C:\Inetpub\wwwroot"
  Dim uploadsDirVar
  uploadsDirVar = "c:\inetpub\wwwroot\wesley\scholtens\images" 
' ****************************************************

' Note: this file uploadTester.asp is just an example to demonstrate
' the capabilities of the freeASPUpload.asp class. There are no plans
' to add any new features to uploadTester.asp itself. Feel free to add
' your own code. If you are building a content management system, you
' may also want to consider this script: http://www.webfilebrowser.com/

function OutputForm()
%>

<%
end function


function SaveFiles
    Dim Upload, fileName, fileSize, ks, i, fileKey

    Set Upload = New FreeASPUpload
    Upload.Save(uploadsDirVar)

    ' If something fails inside the script, but the exception is handled
    If Err.Number<>0 then Exit function

    SaveFiles = ""
    ks = Upload.UploadedFiles.keys
    if (UBound(ks) <> -1) then

        for each fileKey in Upload.UploadedFiles.keys
            filename = Upload.UploadedFiles(fileKey).FileName


        next
    else
        SaveFiles = "The file name specified in the upload form does not correspond to a valid file in the system."
    end if


    %>
    <%
dim naam, prijs, tekst, pagina

 
 naam = Upload.Form("naam")
 prijs = Upload.Form("prijs")

     tekst = Upload.Form("DESCR")
     pagina = Upload.Form("pagina")


%>

<h3> De volgende gegevens zijn met succes ingevoegd </h3>
<table width="500" border="0">


<tr>
     <td>naam:</td>
    <td><input type="text" name="naam" maxlength="27" size ="30" value="<%= naam %>"></td><td></td><td><img src="images/<%=filename %>" width="112" height="84"></td>

  </tr>
    <tr>
    <td>Prijs</td>
<td><input type="text" name="prijs" value="<%= prijs %>"></td>
  </tr>
      <tr>
    <td>pagina</td>
<td><input type="text" name="pagina" value="<%= pagina %>"></td>
  </tr>
  
</table>
beschrijving:<BR><TEXTAREA NAME="DESCR" rows="6" cols="35"><%= tekst %></TEXTAREA><BR>


    </table>
<geldig>U wordt zo terug gestuurd een ongeblik geduld</geldig>
    <%


    ' De SQL query die de gegevens in de database zet. De SQL hieronder is opgedeeld ' in stukjes om het duidelijker te maken. Alles kan gewoon achterelkaar.
        SQL = "INSERT INTO data(naam, filename, tekst, prijs,pagina,id) VALUES('"&naam&"','"&filename&"','"&tekst&"','"& "€" +  prijs & "','"&pagina&"','"&id&"')"

    ' Maak een object objAdd aan. Open dit record met bepaalde waarden
    set objAdd = objCon.execute(SQL)


    ' Sluit de recordset en de verbinding af omdat we die niet meer gebruiken.
    Set objAdd = Nothing
    objCon.close
    set objCon = Nothing

%>


    <%
end function


%>


<BODY>

<br><br>

<%
Dim diagnostics
if Request.ServerVariables("REQUEST_METHOD") <> "POST" then
    diagnostics = TestEnvironment()
    if diagnostics<>"" then
        response.write "<div style=""margin-left:20; margin-top:30; margin-right:30; margin-bottom:30;"">"
        response.write diagnostics
        response.write "<p>After you correct this problem, reload the page."
        response.write "</div>"
    else
        response.write "<div style=""margin-left:150"">"
        OutputForm()
        response.write "</div>"
    end if
else
    response.write "<div style=""margin-left:150"">"
    OutputForm()
    response.write SaveFiles()
    response.write "<br><br></div>"
end if

%>

<meta http-equiv="refresh" content="4;URL=opvragen.asp" /> 
</div>
</BODY>
</HTML>

[ Voor 0% gewijzigd door RobIII op 02-04-2007 17:41 . Reden: Code tag fix ]


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 07:54

Janoz

Moderator Devschuur®

!litemod

(dus niet zo lastig en geen moeite om te posten lijkt mij)
Faq en dan met name de quickstart lezen lijkt me ook niet zo moeilijk, maar blijkbaar heb je dat niet gedaan....

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Ja, helaas. Zo werken wij hier niet.
Zowieso geven wij geen support op code van derden, wij programmeren hier in [PRG] zélf. Voor support op scripts die je ergens vindt/'leent' kun je contact opnemen met de makers.

Daarnaast is het de bedoeling dat, als je code post, je alleen relevante code post en niet hele lappen. Daarbij hoor je dan ook nog eens aan te geven wat je denkt dat er verkeerd is, wat je geprobeerd en/of gezocht hebt om het probleem op te lossen en wat er niet aan werkt(e) enzovoorts. Zie daarvoor ook onze Programming Beleid Quickstart.

Je topic is nu een zgn. quickfix topic, en die laten we hier niet staan.

[ Voor 5% gewijzigd door RobIII op 02-04-2007 17:46 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Dit topic is gesloten.