Visualizzazione dei risultati da 1 a 5 su 5

Discussione: rs.movenext

  1. #1

    rs.movenext

    ho realizzato un carrello x un sito di commercio elettronico....l'inserimento dei prodotti è ok, per le modifiche delle quantità ho fatto in modo che se nella casella di testo della quantità il valore è 0 cancella l'oggetto altrimenti modifica il prezzo. il problema consiste che non fa queste modifiche perchè da il seguente errore

    Tipo di errore:
    ADODB.Recordset (0x800A0E78)
    L'operazione non è consentita se l'oggetto è chiuso.
    /Articoli/Carrello.asp, line 46

    codice:
    if request.QueryString("azione") = "aggiorna" then
    	set rs = Server.CreateObject("ADODB.Recordset")
    	rs.activeconnection = conn
    	rs.cursortype = adOpenDynamic
    	rs.locktype = adLockOptimistic
    	strsql = "select * from Carrello where IdCliente = " & session("IdCliente") & ""
    	rs.open strsql
    	do while not rs.eof
    		val = request.QueryString("pc_" & rs("IdProdotto"))
    		if val = 0 then
    			strsql = "delete from Carrello where IdCliente = " & session("IdCliente") & " and IdProdotto = " & rs("IdProdotto") & ""
    			set rs = conn.execute(strsql)
    		else
    			rs("Quantita") = val
    		end if
    	rs.movenext 
    	loop
    	'rs.close
    	set rs = nothing
    end if
    l'errore sta nella riga in grassetto

  2. #2
    l'altro rs chiamalo con un nome diverso.
    codice:
    do while not rs.eof
    		val = request.QueryString("pc_" & rs("IdProdotto"))
    		if val = 0 then
    			strsql = "delete from Carrello where IdCliente = " & session("IdCliente") & " and IdProdotto = " & rs("IdProdotto") & ""
    			set rs2 = conn.execute(strsql)
    		else
    			rs2("Quantita") = val
    		end if
    	rs.movenext 
    	loop

  3. #3
    ora non da + errore però quando gli dò l'azione aggiorna che esegue quello postato prima cancella tutto il carrello

  4. #4
    giusto per puntualizzare
    codice:
    val = request.QueryString("pc_" & rs("IdProdotto"))
    val non sarà mai uguale a 0 perchè è una stringa e non un numero

    il codice che hai postato comunque non aggiornerà il record in quanto non fai l'update

    riformula in modo più chiaro quale azioni vuoi produrre sul db
    byluciani.com - Soluzioni ASP/VBScript freeware

    bylucianiUpload 2.0

  5. #5
    si infatti me ne sono accorto circa una mezz'oretta fa....invece di request.querystring ho messo request.form....ora funziona perfettamente....grazie e ciao

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 © 2025 vBulletin Solutions, Inc. All rights reserved.