Salve a tutti, mi sto dilettando nella realizzazione di un ecommerce...dopo tanto cercare finalmente ho trovato un ottimo script per il carrello.
Questo script fa uso di un array per memorizzare i dati degli articoli: in particolare è di due colonne, colonna 1 = id degli articoli, colonna 2 = quantità degli articoli.
Inserimento, modifica e svuota carrello funzionano perfettamente. Invece la cancellazione mi sta dando problemi.
COME FUNZIONA? ho l'elenco degli articoli inseriti nel carrello e per ciascuno un checkbox di eliminazione. Se checko e faccio "aggiorna carrello" dovrebbe prelevare gli id checkati e fare gli opportuni spostamenti nell'array e il ridimensionamento.
In realtà questo non succede correttamente: es. ne checko due e ne elimina tre...ne checko uno e ne elimina quattro...non capisco bene cosa faccia.
Volete esaminare con me la sub???
codice:
sub cancellaArticoli()
'Questa routine elimina un articolo dal carrello
'con una tecnica di shifting degli elementi
  articoli=split(request("elimina"),",")
  presenti=true
  for k=0 to ubound(articoli)
	x=0
	response.write x
	do
	if cint(carrello(0,x)) = cint(articoli(k)) then
  		'Verifico se si tratta dell'ultimo elemento
  		if x<ubound(carrello,2) then
  			ultimo=ubound(carrello,2)
  			carrello(0,x)=carrello(0,ultimo)
  			carrello(1,x)=carrello(1,ultimo)
  		end if
  			if ubound(carrello,2)=0 then
  				erase carrello
  				presenti=false
  			else
  				redim preserve carrello(1,ubound(carrello,2)-1)
  			end if
		exit do
  	else
  		x=x+1
  	end if
  	loop
  next
end sub
Ho capito solo che il problema forse è qui:

carrello(0,x)=carrello(0,ultimo)
carrello(1,x)=carrello(1,ultimo)