Visualizzazione dei risultati da 1 a 4 su 4

Discussione: problema con session

  1. #1

    problema con session

    Ciao a tutti,
    ho un problema con le sessioni in asp.
    in una pagina creo un'oggetto da una mia classe e lo metto nella session.
    In un'altra pagina dovrei leggere l'oggetto dalla session e scriverne le proprietà, ma ottengo un errore di questo tipo:
    codice:
    Microsoft VBScript runtime  error '800a01b6'
    
    Object doesn't support this property or method: 'mycart.products'
    
    /minishop/provacartsession.asp, line 82
    Ringrazio anticipatamente chi avrà qualche consiglio.

    i sorgenti delle due pagine sono questi:
    prima pagina (inserisce l'oggetto nella session)
    provacart.asp
    codice:
    <%
    Class cartItem
    	private m_prodId
      private m_description
      private m_price
      private m_taxes
      private m_quantity
      
      Public property get productID
      	productId = m_prodId
      end property
      
      Public property get description
      	description = m_description
      end property
      
      Public property get price
      	price = m_price
      end property
      
      Public property get taxes
      	taxes = m_taxes
      end property
      
      Public property get quantity
      	quantity = m_quantity
      end property
      
      Public property let productId(arg)
      	m_prodId = arg
      end property
    
      Public property let description(arg)
      	m_description = arg
      end property
      
      Public property let price(arg)
      	m_price = arg
      end property
      
      Public property let taxes(arg)
      	m_taxes = arg
      end property
      
      Public property let quantity(arg)
      	m_quantity = arg
      end property
    end class
    
    Class shopCart
    	Public products()
    
    	Private Sub Class_Initialize()
    		redim products(1)
        'response.write "
    
    shopcart initialized. ubound(products): " & ubound(products) & "</p>" 
    	End Sub
      
      Public Sub add(id,description,price,vat,qty)
      	'response.write "sub add"
        'response.flush
      	set tempItem = new cartItem
        with tempItem
        	.productId = id
          .description = description
          .price = price
          .taxes = vat
          .quantity = quantity
        end with
        'response.write "adding item" 
        'response.flush
        redim preserve products(ubound(products))
      	set products(ubound(products)-1) = tempItem
        'response.write products(ubound(products)-1).description
      end sub
      
      public property get items
      	items = products
      end property
    end class
    
    set prova = new shopCart
    prova.add 1,"prova descrizione 1",10,20,1 
    set Session("shop_cart") = prova
    %>
    verifica sessione
    questa invece è la pagina che dovrebbe leggere dalla sessione e dà l'errore
    provacartsession.asp
    codice:
    <%
    Class cartItem
    	private m_prodId
      private m_description
      private m_price
      private m_taxes
      private m_quantity
      
      Public property get productID
      	productId = m_prodId
      end property
      
      Public property get description
      	description = m_description
      end property
      
      Public property get price
      	price = m_price
      end property
      
      Public property get taxes
      	taxes = m_taxes
      end property
      
      Public property get quantity
      	quantity = m_quantity
      end property
      
      Public property let productId(arg)
      	m_prodId = arg
      end property
    
      Public property let description(arg)
      	m_description = arg
      end property
      
      Public property let price(arg)
      	m_price = arg
      end property
      
      Public property let taxes(arg)
      	m_taxes = arg
      end property
      
      Public property let quantity(arg)
      	m_quantity = arg
      end property
    end class
    
    Class shopCart
    	Public products()
    
    	Private Sub Class_Initialize()
    		redim products(1)
        'response.write "
    
    shopcart initialized. ubound(products): " & ubound(products) & "</p>" 
    	End Sub
      
      Public Sub add(id,description,price,vat,qty)
      	'response.write "sub add"
        'response.flush
      	set tempItem = new cartItem
        with tempItem
        	.productId = id
          .description = description
          .price = price
          .taxes = vat
          .quantity = quantity
        end with
        'response.write "adding item" 
        'response.flush
        redim preserve products(ubound(products))
      	set products(ubound(products)-1) = tempItem
        'response.write products(ubound(products)-1).description
      end sub
      
      public property get items
      	items = products
      end property
    end class
    
    set mycart = Session("shop_cart")
    response.write "prodotto 1: " & mycart.products(0).description
    %>

  2. #2
    che io sappia l'obj Session non supporta il salvataggio di oggetti.. al piu stringhe (forse gli array, ma ne dubito)
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  3. #3
    Confermo, nella session non si possono salvare oggetti, l'ho trovato anche in un altro forum.
    Per i vettori nessun problema invece: la session può contenere una variabile array anche multidimensionale.
    Bye!

  4. #4
    Originariamente inviato da softmasters
    Confermo, nella session non si possono salvare oggetti, l'ho trovato anche in un altro forum.
    Per i vettori nessun problema invece: la session può contenere una variabile array anche multidimensionale.
    Bye!
    figo...
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.