• User

    Grazie lo proverò anche sono ho capito bene come posso eliminare da 2 o più campi contemporaneamente il valore (diciamo il terzo per esempio) e implementarlo al mio db access. Grazie e scusami ma non mi + chiara proprio questa parte.
    G.


  • User

    Nessun aiuto?


  • Moderatore

    Scusa ma non ti seguo nuovamente, i dati arrivano dal DB o dal QueryString? Se arrivano dal DB come mai hai elementi separati da virgola?

    Comunque per eseguire l'operazione di cancellazione dell'elemento dall'elenco devi "chiamare" due volte DeleteFromArray passando prima i nomi e l'indice da eliminare e subito dopo i numeri e l'indice, indice che dovrà essere lo stesso di prima...


  • User

    Allora i dati arrivano dal querystring e devo cancellarli dal db. Grazie


  • Moderatore

    Continua a non essermi chiaro, che relazione c'è tra i dati del QueryString e quelli nel DB, come fai ad essere sicuro che il dato in una determinata posizione corrisponda a quella del DB?


  • User

    La relazione che cè è il NOME che è univoco pertanto recuperando dal querystring il NOME di conseguenza in base alla posizione del nome si trova la posizione del formato! Ed effettuare la cancellazione d entrambi!


  • Moderatore

    Quindi fammi capire se ho capito:

    Nel QueryString hai un elenco di nomi separato da virgola!
    Sai anche in quale posizione si trova il nome da eliminare, ma non qual'è e devi quindi trovarlo!

    Ecco come:

    
    Function SearchFromArray(text,index)
    Dim i As Int
    [INDENT]a=Split(text, ",")[/INDENT]
    [INDENT]i=0[/INDENT]
    [INDENT]for each x in a[/INDENT]
    [INDENT=2]If i = index Then[/INDENT]
    [INDENT=3]SearchFromArray = x[/INDENT]
    [INDENT=2]End If[/INDENT]
    [INDENT=2]i = i + 1[/INDENT]
    [INDENT]next[/INDENT]
    End Function
    
    

    Con la stessa funzione puoi anche trovare il FORMATO, passando il testo contenente i formati separati da virgola.

    A questo punto però devi eliminarli dal DB e per questo devi utilizzare SQL come nella mia prima risposta...


  • User

    In pratica ricevo un solo valore, dovrei fare tipo così per cancellare i 2 valori presenti alla stessa posizione nel campo db, non mi è chiaro questo passaggio:

    
    **nome = request.querystring("file")
    formato = request.querystring("formato")
    
    Function SearchFromArray(nome,index)
    Dim i As Int
    a=Split(nome, ",")
    i=0
    for each x in a
    If i = index Then
    SearchFromArray = x
    End If
    i = i + 1
    next
    End Function
    ****
    Function SearchFromArray(formato,index)
    Dim i As Int
    a=Split(formato, ",")
    i=0
    for each x in a
    If i = index Then
    SearchFromArray = x
    End If
    i = i + 1
    next
    End Function**
    
    

    Poi come faccio ad eliminarlo dalla query sql?
    Ho db access?
    Grazie 1000 per l'aiuto che mi stai dando.
    G.


  • User

    Ho provato a fare questo!

    
    nome = request.querystring("file")
    
    function SearchFromArray(nome,index)
    
    a=Split(nome, ",")
    i=0
    for each x in a
    If i = index Then
    SearchFromArray = x
    End If
    i = i + 1
    
    sql = "DELETE * FROM ordini WHERE foto = " & x(i)
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn, 3, 3
    
    next
    End Function
    
    
    

    Almeno per eliminare un solo valore, ma io devo eliminare + valori collegati tra loro (il NOME e il FORMATO di riferimento)
    Ma non elimina nulla.
    Dove sbaglio?
    Aiutatemi, grazie
    G.


  • User

    Nessun aiuto???