Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Errore Array e MySql (?)

    Salve,

    ho uno strano, stranissimo errore... mi capita questo: io estraggo i records da una tabella/db mysql...meglio che vi faccio vedere un esempio:

    codice:
    set conn=...
    conn.open...
    set rs=...
    rs.open "select * from site_categorie where tipo=0",conn,1,1
    
    '******** inizializzo un array di pulsanti
    redim pulsanti(2)
    pulsanti(0)="home"
    pulsanti(1)="prodotti"
    
    '****** ciclo nell'array per riempire i pulsanti dinamici
    start=3 'dimensione di partenza per il redim dell'array
    
    while not rs.eof
    
    redim preserve pulsanti(start)
    pulsanti(start-1)=rs("categoria")
    
    start=start+1
    rs.movenext
    wend
    per stampare l'array uso il classico
    codice:
    for i=0 to ubound(pulsanti)...next
    ora, rs contiene SOLO 2 RECORDSET (query testata direttamente nel db)... non vorrei essermi rimbecillito tutto di un colpo, ma dire

    codice:
    redim arrai(dimensione)
    vuol dire dimensionare un array di DIMENSIONE elementi con indici da 0 a DIMENSIONE-1 no?

    ma allora mi dite perchè diavolo mi stampa:

    codice:
    home
    prodotti
    cat1
    cat2
    ---vuoto---
    mi aggiunge un elemento in +..è come se iterasse una volta di piu nel recordset...e lo fa solo con gli array popolati da db ( ne ho altri 2/3) e SOLO usando il db mysql...quando uso access non ho problemi di sorta


    ma è un problema legato a mysql o mi sono rimbecillito io?


  2. #2
    Utente di HTML.it L'avatar di 99eros9
    Registrato dal
    Jan 2003
    Messaggi
    2,637
    Mi sembra che il problema stia nel ridimensionamento che è sempre di indice superiore di una unità, rispetto all'indice dell'elemento a cui assegni il valore.
    Ad esempio, alla prima iterazione, l'indice è 3 e tu assegni il valore all'elemento di indice 2.
    Nella seconda iterazione l'indice max è 4 e tu assegni il valore all'elemento di indice 3 e così via...
    Tala är silver men tiga är guld!
    Pubblica il tuo curriculum
    Segnala il tuo sito
    Ancl

  3. #3
    Originariamente inviato da 99eros9
    Mi sembra che il problema stia nel ridimensionamento che è sempre di indice superiore di una unità, rispetto all'indice dell'elemento a cui assegni il valore.
    Ad esempio, alla prima iterazione, l'indice è 3 e tu assegni il valore all'elemento di indice 2.
    Nella seconda iterazione l'indice max è 4 e tu assegni il valore all'elemento di indice 3 e così via...
    scusa è, ma se io faccio redim mioArray(conta), con conta=2 io creo un array di due elementi, quindi con indici 0 e 1, mica un array di 3 elementi con indici 0,1,2...

    che palle ste cavolate

  4. #4
    lasciamo stare, ho scoperto che sono idiota io, ha ragione 99eros

  5. #5
    Utente di HTML.it L'avatar di Sypher
    Registrato dal
    Jun 2003
    Messaggi
    1,994
    Originariamente inviato da santino83_11_04
    scusa è, ma se io faccio redim mioArray(conta), con conta=2 io creo un array di due elementi, quindi con indici 0 e 1, mica un array di 3 elementi con indici 0,1,2...

    che palle ste cavolate
    con conta = 2 crei un array di 3 elementi...
    La passera non dura perchè Sypher la cattura!

    "No one like us we don't care, we are millwall, super millwall, we are millwall from the DEN"

  6. #6
    Originariamente inviato da Sypher
    con conta = 2 crei un array di 3 elementi...
    si c'è stato il momento del rimbecillimento

  7. #7
    Utente di HTML.it L'avatar di Sypher
    Registrato dal
    Jun 2003
    Messaggi
    1,994
    Originariamente inviato da santino83_11_04
    si c'è stato il momento del rimbecillimento
    vabbè pe stavolta ti perdono
    La passera non dura perchè Sypher la cattura!

    "No one like us we don't care, we are millwall, super millwall, we are millwall from the DEN"

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.