Hallo alle zusammen,
gleich vorweg, ich habe von asp soviel Ahnung wie ein Schuster vom Metzgern.
ich habe ein Portal wo angemeldete User Arikel ähnlich wie bei einer Auktion einstellen können. (B2B - Portal). Das ganze läuft auf einen Windows 2003 Server.
Im Mitgliederbereich können dan die User mittels eines Formulars Ihre Artikel einstellen die dann in Access-db gespeichert wird, dabei zählt das Formular die Anzahl der Datensätze - das heist der User kann nur so viel Datensätze einstellen wie er vorher gebucht hat.
Für Lösungsansätze sch jetzt besten Dank, aber kein Fach-Chinesisch ich habe keine Ahnung von ASP
Nun suche ich nach einer Möglichkeit das Die User Ihrte Daten auch per CSV- upload
einstellen können.
Im Klartext -
1. Der Dateiname muss egalsein
2. Die Datensätze der CSV müssen gezählt werden
3. Die CSV muss nach pkt.2 in die Datenbank eingelesen werden.
Hier die Datei mittels derer die User Ihre Artikel einstellen, ich habe das jetzt schon für einen Upload abgeändert(auf der Html-Seite):


gleich vorweg, ich habe von asp soviel Ahnung wie ein Schuster vom Metzgern.
ich habe ein Portal wo angemeldete User Arikel ähnlich wie bei einer Auktion einstellen können. (B2B - Portal). Das ganze läuft auf einen Windows 2003 Server.
Im Mitgliederbereich können dan die User mittels eines Formulars Ihre Artikel einstellen die dann in Access-db gespeichert wird, dabei zählt das Formular die Anzahl der Datensätze - das heist der User kann nur so viel Datensätze einstellen wie er vorher gebucht hat.
Für Lösungsansätze sch jetzt besten Dank, aber kein Fach-Chinesisch ich habe keine Ahnung von ASP
Nun suche ich nach einer Möglichkeit das Die User Ihrte Daten auch per CSV- upload
einstellen können.
Im Klartext -
1. Der Dateiname muss egalsein
2. Die Datensätze der CSV müssen gezählt werden
3. Die CSV muss nach pkt.2 in die Datenbank eingelesen werden.
Hier die Datei mittels derer die User Ihre Artikel einstellen, ich habe das jetzt schon für einen Upload abgeändert(auf der Html-Seite):



Code:
<%@LANGUAGE="VBSCRIPT"%>
<!--#include file="Connections/haendlerportalkunden.asp" -->
<!--#include file="head.asp"-->
<%
'---JS'20040828---BOF
If Session("DatensaetzeFrei") < 1 Then Response.Redirect "login_ok.asp"
'---JS'20040828---EOF
%>
<%
' *** Edit Operations: declare variables
MM_editAction = CStr(Request("URL"))
If (Request.QueryString <> "") Then
MM_editAction = MM_editAction & "?" & Request.QueryString
End If
' boolean to abort record edit
MM_abortEdit = false
' query string to execute
MM_editQuery = ""
%>
<%
' *** Insert Record: set variables
If (CStr(Request("MM_insert")) <> "") Then
MM_editConnection = MM_heandlerportaldaten_STRING
MM_editTable = "daten"
MM_editRedirectUrl = "login_ok.asp"
MM_fieldsStr = "Firmenname|value|Anrede|value|Ansprechpartner|value|Strasse|value|PLZ|value|Ort|value|Land|value|Telefon|value|Telefax|value|Mail|value|Zahlungsmoeglichkeiten|value|Versandarten|value|VersandkostenInland|value|Waehrung1|value|VersandkostenAusland|value|Waehrung2|value|VersandkostenBemerkung|value|FirmenlogoAdresse|value|USTIDNR|value|Benutzername|value|Passwort|value|Registrierungsdatum|value|HomepageAdresse|value|HomepageAGBAdresse|value|Branche|value|Kategorie|value|Rubrik|value|ArtikelNr|value|Titel|value|Beschreibung|value|Menge|value|Verpackungseinheit|value|Mindestabnahme|value|Lieferzeit|value|Gueltigbis|value|EhemaligerPreis|value|Ladenpreis|value|Preis|value|Produktbild1|value|Produktbild2|value|Galerie|value"
MM_columnsStr = "Firmenname|',none,''|Anrede|',none,''|Ansprechpartner|',none,''|Strasse|',none,''|PLZ|',none,''|Ort|',none,''|Land|',none,''|Telefon|',none,''|Telefax|',none,''|Mail|',none,''|Zahlungsmoeglichkeiten|',none,''|Versandarten|',none,''|VersandkostenInland|',none,''|Waehrung1|',none,''|VersandkostenAusland|',none,''|Waehrung2|',none,''|VersandkostenBemerkung|',none,''|FirmenlogoAdresse|',none,''|USTIDNR|',none,''|Benutzername|',none,''|Passwort|',none,''|Registrierungsdatum|',none,''|HomepageAdresse|',none,''|HomepageAGBAdresse|',none,''|Branche|',none,''|Kategorie|',none,''|Rubrik|',none,''|ArtikelNr|',none,''|Titel|',none,''|Beschreibung|',none,''|Menge|',none,''|Verpackungseinheit|',none,''|Mindestabnahme|',none,''|Lieferzeit|',none,''|Gueltigbis|',none,''|EhemaligerPreis|',none,''|Ladenpreis|',none,''|Preis|none,none,null|ProduktbildURL1|',none,''|ProduktbildURL2|',none,''|Galerie|none,1,0"
' create the MM_fields and MM_columns arrays
MM_fields = Split(MM_fieldsStr, "|")
MM_columns = Split(MM_columnsStr, "|")
' set the form values
For i = LBound(MM_fields) To UBound(MM_fields) Step 2
MM_fields(i+1) = CStr(Request.Form(MM_fields(i)))
Next
' append the query string to the redirect URL
If (MM_editRedirectUrl <> "" And Request.QueryString <> "") Then
If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then
MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
Else
MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
End If
End If
End If
%>
<%
' *** Insert Record: construct a sql insert statement and execute it
If (CStr(Request("MM_insert")) <> "") Then
' create the sql insert statement
MM_tableValues = ""
MM_dbValues = ""
For i = LBound(MM_fields) To UBound(MM_fields) Step 2
FormVal = MM_fields(i+1)
MM_typeArray = Split(MM_columns(i+1),",")
Delim = MM_typeArray(0)
If (Delim = "none") Then Delim = ""
AltVal = MM_typeArray(1)
If (AltVal = "none") Then AltVal = ""
EmptyVal = MM_typeArray(2)
If (EmptyVal = "none") Then EmptyVal = ""
If (FormVal = "") Then
FormVal = EmptyVal
Else
If (AltVal <> "") Then
FormVal = AltVal
ElseIf (Delim = "'") Then ' escape quotes
FormVal = "'" & Replace(FormVal,"'","''") & "'"
ElseIf Delim = "" Then '---JS'20040830: Für numerische Werte...
FormVal = Replace(FormVal,",",".") '---JS'20040830: ...Komma in Punkt wandeln
Else
FormVal = Delim + FormVal + Delim
End If
End If
If (i <> LBound(MM_fields)) Then
MM_tableValues = MM_tableValues & ","
MM_dbValues = MM_dbValues & ","
End if
MM_tableValues = MM_tableValues & MM_columns(i)
MM_dbValues = MM_dbValues & FormVal
Next
MM_editQuery = "insert into " & MM_editTable & " (" & MM_tableValues & ") values (" & MM_dbValues & ")"
If (Not MM_abortEdit) Then
' execute the insert
Set MM_editCmd = Server.CreateObject("ADODB.Command")
MM_editCmd.ActiveConnection = MM_editConnection
MM_editCmd.CommandText = MM_editQuery
MM_editCmd.Execute
MM_editCmd.ActiveConnection.Close
If (MM_editRedirectUrl <> "") Then
Response.Redirect(MM_editRedirectUrl)
End If
End If
End If
%>
<!--#include file="Connections/heandlerportaldaten.asp" -->
<%
' *** Restrict Access To Page: Grant or deny access to this page
MM_authorizedUsers=""
MM_authFailedURL="error_101.asp"
MM_grantAccess=false
If Session("MM_Username") <> "" Then
If (true Or CStr(Session("MM_UserAuthorization"))="") Or _
(InStr(1,MM_authorizedUsers,Session("MM_UserAuthorization"))>=1) Then
MM_grantAccess = true
End If
End If
If Not MM_grantAccess Then
MM_qsChar = "?"
If (InStr(1,MM_authFailedURL,"?") >= 1) Then MM_qsChar = "&"
MM_referrer = Request.ServerVariables("URL")
if (Len(Request.QueryString()) > 0) Then MM_referrer = MM_referrer & "?" & Request.QueryString()
MM_authFailedURL = MM_authFailedURL & MM_qsChar & "accessdenied=" & Server.URLEncode(MM_referrer)
Response.Redirect(MM_authFailedURL)
End If
%>
<%
set haendlerportaldaten = Server.CreateObject("ADODB.Recordset")
haendlerportaldaten.ActiveConnection = MM_heandlerportaldaten_STRING
haendlerportaldaten.Source = "SELECT * FROM eigentuemer"
haendlerportaldaten.CursorType = 0
haendlerportaldaten.CursorLocation = 2
haendlerportaldaten.LockType = 3
haendlerportaldaten.Open()
haendlerportaldaten_numRows = 0
%>
<%
set daten = Server.CreateObject("ADODB.Recordset")
daten.ActiveConnection = MM_heandlerportaldaten_STRING
daten.Source = "SELECT * FROM daten"
daten.CursorType = 0
daten.CursorLocation = 2
daten.LockType = 3
daten.Open()
daten_numRows = 0
%>
<%
set anmeldedaten = Server.CreateObject("ADODB.Recordset")
anmeldedaten.ActiveConnection = MM_haendlerportalkunden_STRING
anmeldedaten.Source = "SELECT * FROM anmeldedaten " _
& "where Benutzername='" & Session("MM_Username") & "'" '---JS'20040811: Login berücksichtigt
anmeldedaten.CursorType = 0
anmeldedaten.CursorLocation = 2
anmeldedaten.LockType = 3
anmeldedaten.Open()
anmeldedaten_numRows = 0
%>
<%
set kategorien = Server.CreateObject("ADODB.Recordset")
kategorien.ActiveConnection = MM_heandlerportaldaten_STRING
kategorien.Source = "SELECT * FROM kategorien ORDER BY Kategorien ASC"
kategorien.CursorType = 0
kategorien.CursorLocation = 2
kategorien.LockType = 3
kategorien.Open()
kategorien_numRows = 0
%>
<html>
<head>
<title>Restposten Konkursware Grosshändler Sonderposten Auktionsartikel Importeure überschüssige Wirtschaftsgüter B2B Handelsplatz</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<STYLE TYPE="text/css">
<!--
select {font-size: 8pt} input {font-size: 8pt} textarea {font-size: 8pt} td {font-size: 8pt}
--></STYLE>
<style type="text/css"><!--
form {margin:0}
//-->
</style>
<script language="JavaScript">
<!--
function openWin(url, windowname, w, h) {
newWin=window.open(url, windowname, "scrollbars=yes,width=" + w + ",height=" + h)
newWin.focus()
}
function MM_findObj(n, d) { //v4.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' bitte korrekte E- Mail Adresse angeben.\n';
} else if (test!='R') {
p=val.indexOf(','); if (p>0) val = val.substring(0,p) + '.' + val.substring(p+1); //---JS'20051227: Kommaeingabe korrigiert
if (isNaN(val)) errors+='- '+nm+' bitte geben Sie hier eine Zahl ein.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (val<min || max<val) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' Daten unvollständig.\n'; }
} if (errors) alert('Information !\n\nEine Datenerfassung ist leider nicht möglich.\nVervollständigen Sie bitte nachfolgende Eingabefelder . . .\n\n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000" vlink="#000000" alink="#000000">
<form name="hinzufuegen" method="POST" action="<%=MM_editAction%>" onSubmit="MM_validateForm('ArtikelNr','','RisNum','Titel','','R','Menge','','RisNum','Verpackungseinheit','','RisNum','Mindestabnahme','','RisNum','Lieferzeit','','R','Gueltigbis','','R','EhemaligerPreis','','RisNum','Ladenpreis','','RisNum','Preis','','RisNum','Beschreibung','','R');return document.MM_returnValue" enctype="multipart/form-data">
<table width="80%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td bgcolor="#D6DCFE"><img src="images/trans20.gif" width="5" height="1"></td>
</tr>
<tr>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="0" height="292">
<tr>
<td width="21%" valign="top" bgcolor="#D6DCFE" height="291">
<!--#include file="menu.asp"-->
<img src="images/trans20.gif" width="5" height="5"> </td>
<td width="79%" valign="top" height="291">
<table width="100%" border="0" cellspacing="0" cellpadding="0" height="324">
<tr>
<td width="3%" valign="top" height="324"><img src="images/trans20.gif" width="20" height="5"></td>
<td width="97%" height="324">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td colspan="6" height="9" valign="top">
<table border="0" cellpadding="0" cellspacing="0" width="100%" height="8">
<tr>
<td colspan="3" height="9" valign="top"><img src="images/trans20.gif" width="5" height="10"></td>
</tr>
<tr>
<td colspan="3" height="9" valign="top"><font face="Arial, Helvetica, sans-serif" size="2"><b><font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#CC0000"><img src="images/xxxrechteck.gif" width="10" height="11"> </font></b></font>
<b>
<font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#CC0000">
CSV -Upload</font></b></td>
</tr>
<tr>
<td colspan="3" height="9" valign="top"><b>
<font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#CC0000">
Wählen Sie Ihre Datei auf ihren lokalen
System aus</font></b><p><b>
<font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#CC0000">
Ihre Persönlichen Daten werden Automatisch
vom System übernommen.</font></b></p>
<p><b>
<font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#CC0000">
Bitte beachten Sie die Menge der Datensätze
entsprechend Ihrres gebuchten Paketes, da es
sonst zu fehlermeldungen</font></b></p>
<p><b>
<font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#CC0000">
kommt.</font></b></td>
</tr>
<tr>
<td colspan="3" height="9" valign="top"><img src="images/trans20.gif" width="5" height="17"></td>
</tr>
<tr>
<td colspan="3" height="9" valign="top">
<input type="hidden" name="Firmenname" value="<%=(anmeldedaten.Fields.Item("Firmenname").Value)%>">
<input type="hidden" name="Anrede" value="<%=(anmeldedaten.Fields.Item("Anrede").Value)%>">
<input type="hidden" name="Ansprechpartner" value="<%=(anmeldedaten.Fields.Item("Ansprechpartner").Value)%>">
<input type="hidden" name="Strasse" value="<%=(anmeldedaten.Fields.Item("Strasse").Value)%>">
<input type="hidden" name="PLZ" value="<%=(anmeldedaten.Fields.Item("PLZ").Value)%>">
<input type="hidden" name="Ort" value="<%=(anmeldedaten.Fields.Item("Ort").Value)%>">
<input type="hidden" name="Land" value="<%=(anmeldedaten.Fields.Item("Land").Value)%>">
<input type="hidden" name="Telefon" value="<%=(anmeldedaten.Fields.Item("Telefon").Value)%>">
<input type="hidden" name="Telefax" value="<%=(anmeldedaten.Fields.Item("Telefax").Value)%>">
<input type="hidden" name="Mail" value="<%=(anmeldedaten.Fields.Item("Mail").Value)%>">
<input type="hidden" name="Zahlungsmoeglichkeiten" value="<%=(anmeldedaten.Fields.Item("Zahlungsmoeglichkeiten").Value)%>">
<input type="hidden" name="Versandarten" value="<%=(anmeldedaten.Fields.Item("Versandarten").Value)%>">
<input type="hidden" name="VersandkostenInland" value="<%=(anmeldedaten.Fields.Item("VersandkostenInland").Value)%>">
<input type="hidden" name="Waehrung1" value="<%=(anmeldedaten.Fields.Item("Waehrung1").Value)%>">
<input type="hidden" name="VersandkostenAusland" value="<%=(anmeldedaten.Fields.Item("VersandkostenAusland").Value)%>">
<input type="hidden" name="Waehrung2" value="<%=(anmeldedaten.Fields.Item("Waehrung2").Value)%>">
<input type="hidden" name="VersandkostenBemerkung" value="<%=(anmeldedaten.Fields.Item("VersandkostenBemerkung").Value)%>">
<input type="hidden" name="FirmenlogoAdresse" value="<%=(anmeldedaten.Fields.Item("FirmenlogoAdresse").Value)%>">
<input type="hidden" name="USTIDNR" value="<%=(anmeldedaten.Fields.Item("USTIDNR").Value)%>">
<input type="hidden" name="Benutzername" value="<%=(anmeldedaten.Fields.Item("Benutzername").Value)%>">
<input type="hidden" name="Passwort" value="<%=(anmeldedaten.Fields.Item("Passwort").Value)%>">
<input type="hidden" name="Registrierungsdatum" value="<%=(anmeldedaten.Fields.Item("Registrierungsdatum").Value)%>">
<% '---JS'20040815---BOF %>
<input type="hidden" name="HomepageAdresse" value="<%=(anmeldedaten.Fields.Item("HomepageAdresse").Value)%>">
<input type="hidden" name="HomepageAGBAdresse" value="<%=(anmeldedaten.Fields.Item("HomepageAGBAdresse").Value)%>">
<input type="hidden" name="Branche" value="<%=(anmeldedaten.Fields.Item("Branche").Value)%>">
<% '---JS'20040815---EOF %>
</td>
</tr>
<tr>
<td colspan="3" height="9" valign="top">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="21%"> </td>
<td width="79%"> </td>
</tr>
<tr>
<td width="21%"> </td>
<td width="79%"> </td>
</tr>
<tr>
<td width="21%"> </td>
<td width="79%"> </td>
</tr>
<tr>
<td width="21%"><b><font size="2">CSV
- Datei</font></b></td>
<td width="79%">
<input type="file" name="F1" size="50"></td>
</tr>
<tr>
<td width="21%"> </td>
<td width="79%"> </td>
</tr>
<tr>
<td width="21%"> </td>
<td width="79%"> </td>
</tr>
<tr>
<td width="21%"> </td>
<td width="79%"> <b>Bitte beachten Sie
die vorgegebene Formatierung der
einzelnen Spalten.</b></td>
</tr>
<tr>
<td width="21%"> </td>
<td width="79%"> </td>
</tr>
<tr>
<td width="21%"> </td>
<td width="79%"> </td>
</tr>
<tr>
<td width="21%"> </td>
<td width="79%"> </td>
</tr>
</table>
</td>
</tr>
<tr>
<td colspan="3" height="9" valign="top">
<div align="right">
<input type="hidden" name="MM_insert" value="true">
<input type="hidden" name="Produktbild1" value="produkte/keinbild.gif">
<input type="hidden" name="Produktbild2" value="produkte/keinbild.gif">
<input type="image" name="Abschicken" value="Abschicken" src="images/xsenden.gif">
</div>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
</td>
</tr>
<tr bgcolor="#9999CC">
<td colspan="2" height="1"><img src="images/trans20.gif" width="5" height="1"></td>
</tr>
</table>
</td>
</tr>
</table>
</form>
</body>
</html>
<%
haendlerportaldaten.Close()
%>
<%
daten.Close()
%>
<%
anmeldedaten.Close()
%>
<%
kategorien.Close()
%><!--#include file="foot.asp"-->