Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16

Discussione: Multi Update

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    68

    Multi Update

    Avete presente il semplice script che permette di cancellare record da una tabella simultaneamente ? bene il mio deve fare una cosa un tantito diversa...deve aggiornare simultaneamente un campo Si/No all'interno di una tabella...ovviamente nei mio recordset tramite la check box io potrò selezionare indifferentemente record che hanno questo valore Si/No True o False...

    Allora la pagina con il recordset passa alla pagina che deve effettuare l'aggiornamento due valori:

    codice:
    <input name="aggiorna" id="aggiorna" type="checkbox" value="<%=rs("ID")%>">
    
    <input type="hidden" name="status" value="<%=rs("status")%>">
    Allora il primo input è uguale a quello della multi cancellazione e ha come valore l'ID del record, il secondo fà la stessa cosa ed ha come valore lo stato del campo Si/No quindi True o False....

    La pagina che riceve i dati del form ha questo codice

    codice:
    <%
    valueDoc=request.Form("aggiorna")
    valueStat=request.Form("status")
    if valueStat = true then
    valore = 0
    else
    valore = 1
    end if
    sql= "Update tabella SET status='"&valore&"' WHERE id IN("&valueDoc&")"
    conn.Execute(sql)
    %>
    Allora tutto funziona se il campo Si/No ha valore False e lui me lo aggiorna a True anche se ne seleziono più di uno...mentre lo script non funzia se il campo Si/No ha valore True e lui me lo lascia True senza darmi errori...

    Perchè ?

    Magari avete pure altre soluzioni...

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Se non sbaglio il campo SI/NO non vuole gli apici!
    A meno di avere invece un campo di tipo testo...

    Roby

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    68
    Originariamente inviato da Roby_72
    Se non sbaglio il campo SI/NO non vuole gli apici!
    A meno di avere invece un campo di tipo testo...

    Roby
    Non mi cambia niente, i valori false me li cambia correttamente in true ma quelli true me li lascia true tiene presente però che se queste righe:
    codice:
    if valueStat = true then
    valore = 0
    else
    valore = 1
    end if
    Le cambio così:
    codice:
    if valueStat = false then
    valore = 1
    else
    valore = 0
    end if
    Mi dà il problema contrario...mi aggiorna i true ma non i false...boh...voi magari avete una soluzione diversa al mio problema...magari c'è una funzione per invertire il valore di un campo si/no.

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Per i SI/NO devi mettere TRUE/FALSE in Access.

    Roby

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    68
    Originariamente inviato da Roby_72
    Per i SI/NO devi mettere TRUE/FALSE in Access.

    Roby
    Ho impostato il formato del campo Si/No come Vero/Falso ma non cambia niente

    Come fareste voi per risolvere il mio problema ?...

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Il campo del db deve essere SI/NO e tu devi passare alla query TRUE/FALSE.

    Roby

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    68
    Originariamente inviato da Roby_72
    Il campo del db deve essere SI/NO e tu devi passare alla query TRUE/FALSE.

    Roby
    Se le scrivo così mi dà errore...HTTP 500 - errore interno del server
    codice:
    valueDoc=request.Form("aggiorna")
    valueStat=request.Form("status")
    if valueStat = true then
    valore = false
    else
    valore = true
    end if
    sql= "Update tebella SET stato='"&valore&"' WHERE id IN("&valueDoc&")"
    conn.Execute(sql)
    Vuoi che ti mando i file ?

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Disattiva la visualizzazione degli errori HTTP brevi dal menu strumenti opzioni internet avanzate di IE.

    Roby

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    68
    Originariamente inviato da Roby_72
    Disattiva la visualizzazione degli errori HTTP brevi dal menu strumenti opzioni internet avanzate di IE.

    Roby
    Mi dice:

    Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

    [Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

    /file/cancella.asp, line 12

    Nella linea 12 c'è "conn.Execute(sql)"

  10. #10
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    stato = "& valore &"
    Roby

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.