Load me up Druckversion
ASP Fileupload
ohne Komponenten
Seite
[<] [1] [2] [3] (4) [5] [>
Do, 04.04.2002
Autor: Olaf Lüder

Beispiel

Zum schnellen Einstieg möchten wir Ihnen im folgenden zwei kurze Beispielskripte (eins für VBScript, eins für JScript) zeigen, das alle Formularfelder sowie Informationen zu allen übertragenen Files auflistet und die Dateien im Unterverzeichnis 'Upload' unter Ihrem ursprünglichen Dateinamen speichert.

Wir gehen davon aus, dass sich die Datei 'FileUploadJS.asp' im gleichen Verzeichnis wie das Skript befindet, sowie zwei Unterverzeichnisse 'temp' und 'upload' existieren, für die der (anonyme) Benutzer Schreibrechte besitzt.

<%@ Language=JScript %>
<!-- #include file="FileUploadJS.asp" -->

<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<BODY>
<%
try {
  Upload = new cFileUpload()
  Upload.Error.Mode = emJScript;
  Upload.Error.Level = elExtended;
  Upload.PathToTemp = Server.MapPath('./') + '\\temp\\';
  Upload.Upload();

  Response.Write('Form-Dictionary:<table border="1"><tr><td>Name</td><td>Wert</td></tr>');
  for (e = new Enumerator(Upload.Form); !e.atEnd(); e.moveNext())
    Response.Write('<tr><td>' + e.item() + '</td><td>' + Upload.Form(e.item()) + '</td></tr>');
  Response.Write('</table>');

  Response.Write('<br>Files-Dictionary:<table border="1"><tr><td>Name</td><td>Pfad</td>'
    + '<td>Dateiname</td><td>Erweiterung</td><td>Content-Type</td><td>Gespeichert unter</td></tr>');
  for (e = new Enumerator(Upload.Files); !e.atEnd(); e.moveNext()){
    Response.Write('<tr><td>' + e.item() + '</td><td>' + Upload.Files(e.item()).FilePath + '</td><td>'
      + Upload.Files(e.item()).FileName + '</td><td>' + Upload.Files(e.item()).FileExt + '</td><td>'
      + Upload.Files(e.item()).ContentType) + '</td>';
    if (!Upload.Files(e.item()).IsEmpty) {
      Upload.Files(e.item()).SaveAs(Server.MapPath('./') + '\\upload\\', Upload.Files(e.item()).FileName
         + '.' + Upload.Files(e.item()).FileExt, true);
      Response.Write('<td>' + Upload.Files(e.item()).SavedAs + '</td>');
    }
    Response.Write('</tr>');
  }
  Response.Write('</table>');
} catch(e) {
  Response.Write('<br>' + e.description);
}
%>
</BODY>
</HTML>

Das gleiche Beispiel sieht in VBScript folgendermaßen aus:

<%@ Language=VBScript %>
<!-- #include file="FileUploadJS.asp" -->

<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<BODY>
<%
On Error Resume Next
set Upload = FileUpload()
Upload.Error.Level = elExtended
Upload.Error.Mode = emVBScript
Upload.PathToTemp = Server.MapPath("./") & "\temp\"
Upload.Upload()

Response.Write "Form-Dictionary:<table border=1><tr><td>Name</td><td>Wert</td></tr>"
for each item in Upload.Form
  Response.Write "<tr><td>" & Item & "</td><td>" & Upload.Form(Item) & "</td></tr>"
next
Response.Write "</table>"

Response.Write "<br>Files-Dictionary:<table border=1><tr><td>Name</td><td>Pfad</td>
  <td>Dateiname</td><td>Erweiterung</td><td>Content-Type</td><td>Gespeichert unter</td></tr>"
for each Item in Upload.Files
  Response.Write "<tr><td>" & Item & "</td><td>" & Upload.Files(Item).FilePath & "</td><td>"
    & Upload.Files(Item).FileName & "</td><td>" & Upload.Files(Item).FileExt & "</td><td>"
      & Upload.Files(Item).ContentType & "</td>"
  if not(Upload.Files(Item).IsEmpty) then
    Upload.Files(Item).SaveAs Server.MapPath("./") & "\upload\", Upload.Files(Item).FileName
      & "." & Upload.Files(Item).FileExt, true
    Response.Write "<td>" & Upload.Files(Item).SavedAs & "</td>"
  end if
  Response.Write "</tr>"
next
Response.Write "</table>"

Response.Write "<br>Error # " & CStr(Err.Number) & " " & Err.Description
Err.Clear
%>
</BODY>
</HTML>

Eine detaillierte Zusammenstellung aller zur Verfügung stehender Methoden und Eigenschaften finden Sie in der Referenz im letzten Teil dieses Beitrages.

© 2001, 2002 NOGETEC GmbH - Alle Rechte vorbehalten. - Impressum
Der Inhalt dieser Seiten ist urheberrechtlich geschützt. Texte, Grafiken und Dateien dürfen ohne unsere schriftliche Genehmigung - auch auszugsweise - nicht kopiert, vervielfätigt oder vertrieben werden.
Übersicht
13 Beiträge
in 11 Kategorien

ASP classic (7)
ASP.NET (0)
Komponenten (2)
ISAPI-Filter (4)
Konfiguration (0)
No more Cookies
ASP Sessions
ohne Sitzungscookies

Sie nutzen das integrierte Session-Objekt?
Ihre Kunden akzeptieren aber keine Cookies?

Wir haben die Lösung...
Load me up
ASP Fileupload
ohne Komponenten

Sie möchten Dateien auf den Server heraufladen,
ohne Komponenten zu installieren?

Gar kein Problem...
Little Secrets
Dateinamen & Parameter
im URL verbergen

Verschiedene Pfade auf eine Datei abbilden...?
Skriptnamen weglassen, Parameter verstecken...?

So funktioniert's ...
Lost in Space
Recordsets
auf Abwegen

Sie nutzen Datenbanken & ADO-Recordsets...?
Die Performance ist aber nicht befriedigend...?

Dann lesen Sie weiter...
Subdomains
Subdomains einrichten
ohne viel Aufwand

Sie möchten Subdomains verwenden, mit eigenen Verzeichnissen aber ohne extra Host-Header oder Web-Sites einzurichten?

Wir zeigen Ihnen wie...