Checkboxen bei einer DB generierten Seite - Denkanstoß
Tomcat
- asp.net
0 Wowbagger0 Stefan Falz0 Uwe Nohl
Hallo Forum,
ich brauche mal einen Stupser wie ich die Sache angehen soll.
Ich habe eine Artikelliste in einer DB. Die Artikel sind für 2 Gruppen (Panda, Adea) zugeordnet. Je nachdem wer der Besucher ist, gibt die DB Abfrage die jeweiligen Artikel aus. D. h. für die einzelnen Besucher ergeben sich unterschiedliche Ergebnisse.
Nun ist die ASP Seite mit einem Formular ausgestattet, in der ich die DB Ergebnisse anzeigen lasse wie folgt:
Artikelname Artikelnr. Bestellmenge Bestellen
Artikelname und Artikelnr. sind jeweils Textboxen (Inhalt autom. aus der DB), Bestellmenge ist ein Popup und Bestellen ist eine Checkbox.
Bei Bestellmenge kann der Besucher die Menge (25,50,75 und 100) auswählen. Bei der Checkbox soll ein Klick dazu beitragen, daß dieser Artikel zur Bestellung ausgewählt wird.
Diese Angaben will ich dann als eMail an eine bestimmte Person verschicken.
Nun zu meinem "Denkanstoß". Wie kann ich es verwirklichen, daß ein Prozess angestoßen wird, der abfragt, welche Checkbox = bestellen ist und dann den dazugehörigen DB Wert mit übergibt, um dann diese Angaben in einer eMail verschickt?
Das Problem, das ich darin sehe, ist, daß diese Checkbox immer den gleichen Namen hat und ich meine das somit eine Bestimmung, welche Checkbox gemeint ist, nicht möglich ist. Oder liege ich da falsch.
Zudem mache ich mir generell Gedanken, wie die gesamte Abfrage lauten soll....
Ich habe mir schon verschiedene Postings bzgl. Checkboxen etc. im Archiv angeschaut. Allerdings habe ich da keinen Bezug auf mein Vorhaben gefunden. Vielleicht habe ich auch etwas übersehen...?
Für jeden Anstoß und jede Hilfe bin ich sehr dankbar.
MfG
Tomcat
Hi Tomcat,
Das Problem, das ich darin sehe, ist, daß diese Checkbox immer den gleichen Namen hat und ich meine das somit eine Bestimmung, welche Checkbox gemeint ist, nicht möglich ist. Oder liege ich da falsch.
wer sagt denn, daß der name immer gleich sein muß? (das scheinst du gerade mit radio-buttons zu verwechseln). Natürlich kann man einer checkbox dynamisch versch. namen und values zuordnen, innerhalb einer schleife z.b. ähnlich einer dyn. generierung von option-tags aus einer db heraus. Und wenn das nicht ausreicht, kannst du noch dyn. bei jedem durchlauf ein hidden-field erzeugen, welches bel. daten aufnimmt. Irgendwie kriegt man die benötigten daten immer von seite zu seite ;)
bis denn...
/*,*/
Hallo Tomcat,
denk Denkanstoss hast Du schon selbst gegeben.
Du hast ein Formular mit folgendem Aufbau:
Artikelnummer - ... - ... - Bestellen (Checkbox)
Am besten so ähnlich deklarieren:
<input type="checkbox" name="Order" value="True">
Bei Abschicken werden jetzt alle Artikel an die
ASP-Seiten übermittelt, aber nur die Checkboxen,
die angeklickt waren.
Beispiel:
Artikel 1 - True
Artikel 2 -
Artikel 1 - True
In der ASP-Seite legst Du eine Schleife um die
Abfrage, ob die Checkbox angeklickt war, aber als
Referenz zum Zählen nimmst Du die Artikelnummer,
da die Checkboxen, wei schon gesagt, nur übermittelt
werden, wenn Sie angeklickt waren.
<%
For intCounter = 1 To Request.Form("ArtikelNR").Count
If Request.Form("Order")(intCounter) = True Then
...
End if
Next
%>
Das sollte Dir den erhoffften Denkanstoss geben.
Tschau, Stefan
Hallo Forum,
ich brauche mal einen Stupser wie ich die Sache angehen soll.
Ich habe eine Artikelliste in einer DB. Die Artikel sind für 2 Gruppen (Panda, Adea) zugeordnet. Je nachdem wer der Besucher ist, gibt die DB Abfrage die jeweiligen Artikel aus. D. h. für die einzelnen Besucher ergeben sich unterschiedliche Ergebnisse.
Nun ist die ASP Seite mit einem Formular ausgestattet, in der ich die DB Ergebnisse anzeigen lasse wie folgt:
Artikelname Artikelnr. Bestellmenge Bestellen
Artikelname und Artikelnr. sind jeweils Textboxen (Inhalt autom. aus der DB), Bestellmenge ist ein Popup und Bestellen ist eine Checkbox.
Bei Bestellmenge kann der Besucher die Menge (25,50,75 und 100) auswählen. Bei der Checkbox soll ein Klick dazu beitragen, daß dieser Artikel zur Bestellung ausgewählt wird.
Diese Angaben will ich dann als eMail an eine bestimmte Person verschicken.
Nun zu meinem "Denkanstoß". Wie kann ich es verwirklichen, daß ein Prozess angestoßen wird, der abfragt, welche Checkbox = bestellen ist und dann den dazugehörigen DB Wert mit übergibt, um dann diese Angaben in einer eMail verschickt?
Das Problem, das ich darin sehe, ist, daß diese Checkbox immer den gleichen Namen hat und ich meine das somit eine Bestimmung, welche Checkbox gemeint ist, nicht möglich ist. Oder liege ich da falsch.
Zudem mache ich mir generell Gedanken, wie die gesamte Abfrage lauten soll....Ich habe mir schon verschiedene Postings bzgl. Checkboxen etc. im Archiv angeschaut. Allerdings habe ich da keinen Bezug auf mein Vorhaben gefunden. Vielleicht habe ich auch etwas übersehen...?
Für jeden Anstoß und jede Hilfe bin ich sehr dankbar.
MfG
Tomcat
ich brauche mal einen Stupser wie ich die Sache angehen soll.
Das Problem, das ich darin sehe, ist, daß diese Checkbox immer den gleichen Namen hat und ich meine das somit eine Bestimmung, welche Checkbox gemeint ist, nicht möglich ist. Oder liege ich da falsch.
MfGTomcat
Hallo Tomcat,
zwar bin ich noch nicht so lange mit ASP zugange, aber das mit den
Checkboxen loese ich in meiner Anwendung ueber das Attribut
VALUE: <INPUT TYPE=CHECKBOX NAME="namedercheckbox" VALUE="Artikel1">
<INPUT TYPE=CHECKBOX NAME="namedercheckbox" VALUE="Artikel2"> usw.
Das heisst dann, wenn diese Checkboxen gecheckt, also true sind,
hat das Formelement "namedercheckbox" deren Werte. Werte nicht gecheckter
Boxen sind nicht als Wert im Formelement "name" enthalen.
Einen solchen Formularinhalt kann ich dann folgendermassen auswerten
(VBScript):
<%Dim varvalue, arr, i
ReDim arr (3, anzahlderartikel)
i=0
for ach varvalue in request.form("namedercheckbox")
arr(3,i)=varvalue
i=i+1
Next%>
Weiterhin gehe ich davon aus, dass Deine Formelemente artikelweise angeordnet sind. Da die auch die textboxen und die popups gleiche
Namen haben duerfen und dann genauso ausgewertet werden
koennen, kannst du auf diese Weise die auch Spalten 0 bis 2 des arrays fuellen. Die kleine
VBScript-Schlaufe oben liest die Werte der Formelemente in strenger Reihenfolge aus, so dass der Bezug immer stimmt.
Die Werte des array koennen dann SQL-Kommandos in eine DB-Tabelle ausgelesen werden.
Deine Fragen zu den DB-Abfragen meusstest Du noch etwas praezisieren.
Welche DB benutzt Du (Oracle, Access ... ?)
hoffe, das dir meine Antwort was bringt,
Uwe