coldfusion - 如何删除存储在 session 中的项目?

标签 coldfusion cfml

我在 ColdFusion 中使用结构数组。这是我尝试过的代码。谁能帮我纠正我的代码?

<cfif isDefined("remove")> //button in the cart page to remove a product
    <cflock scope="session" type="readonly" timeout="0200">
       <cfparam name="Session.cart">
       <cfloop query="#qProductSelected#"> //this is the query for getting productid from url
          <cfset sItem = structNew()> //this is my structure inside an array
          <cfset sItem.Image= Application.imageUrl&qProductSelected.ProductImage> //for getting image 
          <cfset sItem.ProductId =#ProductId#> //getting productid
          <cfset sItem.ProductImage = #Image#> //getting image
          <cfset sItem.ProductName = #ProductName#> //getting product name
          <cfset sItem.ProductDescription =#ProductDescription#> //getting productdescription
          <cfset sItem.quantity = form.qty> //storing quantity from form into the session
          <cfset structClear(sItem)> //finally i use structclear to clear the structure
        </cfloop>
   </cflock>
   <cflocation url="cart.cfm"> //redirecting to cart page itself
</cfif>

最佳答案

由于您正在使用购物车。我猜您将产品存储为结构数组,并将产品的详细信息存储在结构中。 如果您想从购物车中删除产品,代码将如下所示

<cfset ArrayDeleteAt(session.arrCart,form.productsequenceincart) />

例如,如果有人点击了第三个产品的删除按钮,上面的代码就会执行此操作 -

<cfset ArrayDeleteAt(session.arrCart,3) />

它将从购物车数组中删除第三个产品。

我们不需要循环产品。

关于coldfusion - 如何删除存储在 session 中的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52716659/

相关文章:

css - 使用 ColdFusion 通过 URL 设置 CSS 类

javascript - 如何将 Coldfusion 代码放入 JavaScript 变量中

coldfusion - 使用 header 和参数创建 chttp

java - 用一个连字符替换多个连字符的正则表达式

coldfusion - 如何在 Coldfusion 10 中获取应用程序数据源名称?

coldfusion - CFIF 对于数组变量并不总是存在

ColdFusion 10 getting element is undefined in form 错误

coldfusion - 将 ColdFusion 日期转换为 Unix 时间戳

coldfusion - 用 CFML 编写的所有 cfc 方法都需要 output=false 吗?

coldfusion - 基于脚本的组件中的线程不起作用