Forum - Beitrag anzeigen

CF-Advanced - Warenkorb ... der funktioniert, jedoch beim editieren hab ich einen Knopf auf der Leitung?

Icon Pfeil Startseite Icon Pfeil Kategorie Icon Pfeil Suche

Icon Forum Beitrag vom 20.04.2018 12:07 (319 Aufrufe)
Name: MMoser
Titel: Warenkorb ... der funktioniert, jedoch beim editieren hab ich einen Knopf auf der Leitung?
Inhalt: Werte Coldfusion-Gemeinde

ich stehe mal wieder im Schilf und komme nicht weiter. Es geht um einen Warenkorb den ich einmal selbst entwickeln möchte. Dafür habe ich hier mal ein ganz einfaches aufgesetzt. Könnte ein Copy/Paste machen und es bei Euch einsetzten - es sollte soweit problemlos funktionieren;

produkte.cfm

<!doctype html>
<html>
<head>
<InvalidTag charset="UTF-8">
<title>Shop - Produkt Auswahl</title>
</head>

<body>

<h1>Willkommen zum Shop</h1>
<p>&nbsp;</p>

<form action="warenkorb.cfm" method="post">
<p>Artikel-1, seite Eigenschaft, Preis 45.00</p>

<input type="hidden" name="productID" value="1" />
<input type="hidden" name="productName" value="Artikel-1" />
<input type="hidden" name="productPrice" value="45.00" />
<input type="number" name="productMenge" />
<input type="submit" value="zum Warenkorb" />
</form>

<form action="warenkorb.cfm" method="post">
<p>Artikel-2, seine Eigenschaft, Preis 50.00</p>
<input type="hidden" name="productID" value="2" />
<input type="hidden" name="productName" value="Artikel-2" />
<input type="hidden" name="productPrice" value="50.00" />
<input type="number" name="productMenge" />
<input type="submit" value="zum Warenkorb" />
</form>

</body>
</html>


hier der Warenkorb als

warenkorb.cfm


<cfapplication name="App_01"
clientmanagement="no"
clientstorage="Cookie"
sessionmanagement="Yes"
setclientcookies="Yes"
sessiontimeout="#CreateTimeSpan(0,0,20,0)#">



<cfif NOT StructKeyExists(session,'ShoppingCart')>
<cfset Session.ShoppingCart = StructNew()>
<cfset Session.ShoppingCart.FirstName = "">
<cfset Session.ShoppingCart.LastName = "">
<cfset Session.ShoppingCart.Address = "">
<cfset Session.ShoppingCart.Products = ArrayNew(2)>
</cfif>

<cfif StructKeyExists(form,'productID')>
<cfset Session.ShoppingCart.Products[arraylen(Session.ShoppingCart.Products)+1][1] = form.productID>
<cfset Session.ShoppingCart.Products[arraylen(Session.ShoppingCart.Products)][2] = form.productName>
<cfset Session.ShoppingCart.Products[arraylen(Session.ShoppingCart.Products)][3] = form.productPrice>
<cfset Session.ShoppingCart.Products[arraylen(Session.ShoppingCart.Products)][4] = form.productMenge>
</cfif>

<cfif StructKeyExists(url,'deleteID')>
<cfset variables.products = ArrayNew(2)>
<cfloop index="i" from="1" to="#arrayLen(Session.ShoppingCart.Products)#">
<cfif url.deleteID NEQ i>
<cfset variables.products[arraylen(variables.products)+1][1] = Session.ShoppingCart.Products[i][1]>
<cfset variables.products[arraylen(variables.products)][2] = Session.ShoppingCart.Products[i][2]>
<cfset variables.products[arraylen(variables.products)][3] = Session.ShoppingCart.Products[i][3]>
<cfset variables.products[arraylen(variables.products)][4] = Session.ShoppingCart.Products[i][4]>
</cfif>
</cfloop>
<cfset Session.ShoppingCart.Products = variables.products>
</cfif>


<cfif StructKeyExists(form,'editID')>
<cfset variables.products = ArrayNew(2)>
<cfloop index="i" from="1" to="#arrayLen(Session.ShoppingCart.Products)#">
<cfif form.editID NEQ i>
<cfset variables.products[arraylen(variables.products)+1][1] = Session.ShoppingCart.Products[i][1]>
<cfset variables.products[arraylen(variables.products)][2] = Session.ShoppingCart.Products[i][2]>
<cfset variables.products[arraylen(variables.products)][3] = Session.ShoppingCart.Products[i][3]>
<cfset variables.products[arraylen(variables.products)][4] = 15 >
</cfif>
</cfloop>
<cfset Session.ShoppingCart.Products = variables.products>
</cfif>



<cfoutput>
<form name="ShoppingCart" action="warenkorb.cfm" method="post">
<h1>Warenkorb</h1>
<p>Du hast #arrayLen(Session.ShoppingCart.Products)# Artikel in deinem Warenkorb.<br />Session_Nr #Session.SessionID#<br /></p>
<cfloop index="i" from="1" to="#arrayLen(Session.ShoppingCart.Products)#">
<cfset currentFieldName = "productQuantity" & i >
<table>
<tr>
<td>#Session.ShoppingCart.Products[i][2]#</td>
<td>#Session.ShoppingCart.Products[i][3]#</td>
<cfif isDefined("Form.submit")>
<td>Neuer Wert: <input type="text" name="#currentFieldName#" value="#Session.ShoppingCart.Products[i][4]#"></td>
<cfelse>
<td><input type="text" name="#currentFieldName#" value="#Session.ShoppingCart.Products[i][4]#">
<input type="hidden" name="editID#i#" value="#Session.ShoppingCart.Products[i][4]#" />
</td>
</cfif>
<td><a href="warenkorb.cfm?deleteID=#i#">loeschen</a></td>
<td><input type="submit" name="submit" value="aendern"></td>
</tr>
</table>
</cfloop>
</form>
</cfoutput>


<p><a href="produkte.cfm">zum Warenshop zurueck ...</a></p>
<p>&nbsp;</p>

<hr>

<p>&nbsp;</p>
<h1>Demo-Adresse</h1>
<form action="adressen.cfm" method="POST">
<div class="form-row">
<label>
<span>Vorname: </span>
<input type="text" size="20" name="FirstName">
</label>
</div>

<div class="form-row">
<label>
<span>Nachname: </span>
<input type="text" size="20" name="LastName">
</label>
</div>

<div class="form-row">
<label>
<span>Adresszeile usw.</span>
<input type="text" size="20" name="Addresse">
</label>
</div>
<input type="submit" class="submit" value="Einkauf fortsetzen">
</form>


Meine Herausforderung bzw. meine Frage an Euch
besteht nur noch darin, dass ich die Artikel in meinem Warenkorb dann nicht mit einer neuen Zahl, also mit einer neuen Menge aktualisieren kann. Der Rest funktioniert soweit.

Für Tipps und Tricks möchte ich mich bei Euch bedanken
ich schätze die nämlich sehr.

Grüsse Marcel


Antworten
Icon Forum Warenkorb ... der funktioniert, jedoch beim editieren hab ich einen Knopf auf der Leitung? (MMoser, 20.04.2018 12:07)

Bitte melden Sie sich kostenlos an, um eine Antwort auf diesen Beitrag zu erstellen.


Das deutsche ColdFusion-Forum cfml.de ist das Portal für Einsteiger und Experten zum Thema ColdFusion und der ColdFusion Markup Language (CFML).

© 2018 Webdesign & Hosting: CHC ONLINE Kassel | SOLVA Content-Management-System CMS
Urlaub-Angebote.de - Urlaub mit Bestpreis-Garantie buchen