Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    376

    Update con array dinamici

    Salve la situazione è la seguente:
    Da una prima pagina posto i valori per inserirli in una tabella MS Access. Nella pagina1 ci sono campi text e anche radio button, parlo al plurale poichè ce ne possono essere N, tanti quanti sono i record restituiti da una precedente select. Una volta valorizzati questi campi esegui la submit e invio i vari array ad una pagina2 la quale li recupera e li splitta a dovere e li inserisce all'interno di una table. Fino a qui tutto ok perchè funziona benissimo.
    Il problema è come fare ad eseguire un update senza che dia errore, perchè in realtà l'update lo esegue ma mi esce fuori questo errore:
    Indice non incluso nell'intervallo: 'i'
    /convocazioni3.asp, riga 235
    La riga incriminata é :
    RS("Motivo") = DivisioneMotivo(i)
    Vi posto il codice.
    codice:
    
    
    codice:
    Numero= left(request.Form("serie"),instr(request.Form("serie"),",")-1)
        Ident= replace(request.Form("Id")," ","")
        Iden= split(Ident,",") 
    
    
        if request.Form("Motivo"&Numero)<>""then
            motivo = request.Form("Motivo"&Numero)
        else
            motivo =" "
        endif
        
        if request.Form("Maglia"&Numero)<>""then
            Maglia= request.Form("Maglia"&Numero)
        else
            Maglia=" "
        endif  
        
        if request.form("Convocato"&Numero)=""then
            convocato =0
        else
            convocato = request.form("Convocato"&Numero)
        endif
    
    
        DivisioneMotivo= split(motivo,",")
        DivisioneMaglia= split(Maglia,",")
        
        'for i = 0 to Ubound(Iden) - 1
        for i = 0 to Numero - 1 
            sql = "SELECT * FROM [T_Convocazioni"&session("StagioneAttuale")&"]"
            Set RS=Server.CreateObject("ADODB.Recordset")
            RS.Open sql,strConn,1,3
            'RS("Convocato")=Convocato
            RS("Motivo")=DivisioneMotivo(i)
            RS("Maglia")=DivisioneMaglia(i)
            RS.Update   
        Numero=Numero-1
        Next
            RS.Close
            Set RS=Nothing
    
    

    Numero è il numero complessivo degli array che risultano da una query
    Iden è un identificatore che identifica l'atleta in modo univoco.
    Chi Crede in Me non Perirà MAI

  2. #2
    fatti stampare

    Numero
    Motivo
    Maglia

    e controlla che il numero di elementi sia lo stesso

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    376
    il numero è lo stesso ma come faccio a sapere quanto vale bufferdata(1, rcounter)
    Chi Crede in Me non Perirà MAI

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    376
    Ops scusami ho sbaglato pezzo, fai finta di niente
    Chi Crede in Me non Perirà MAI

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    376
    I valori sono quelli giusti e quindi?
    Chi Crede in Me non Perirà MAI

  6. #6
    questa riga

    Numero=Numero-1

    a cosa serve? io la toglierei

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    376
    ok tolta ma rimane lo stesso errore indice non incluso, inoltre ho notato che fa l'upload solo della prima riga. Se cambio i valori dei una delle righe successive non apporta modifiche
    Chi Crede in Me non Perirà MAI

  8. #8
    posta quei valori di cui ti dicevo prima

  9. #9
    poi fai una UPDATE sql, il metodo che stai usando porta via una marea di risorse (anche perché apri N volte e chiudi una volta sola...)

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    376
    7 è il NUmero
    XXXXX il Motivo
    12 Maglia

    Si infatti l'ho tolto dal ciclo e messo sopra
    sql = "SELECT * FROM T_Convocazioni"&session("StagioneAttuale")&" WHERE DataConvocazione = #" & DataAmerica & "# and Categoria = '" & session("Categoria") & "'"
    Set RS=Server.CreateObject("ADODB.Recordset")
    RS.Open sql,strConn,1,3

    ciclo for
    ......
    next
    Chi Crede in Me non Perirà MAI

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.