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

    passare il valore di una ceckbox in un campo access si/no

    buonasera,
    come accennato nel titolo ho necessità di passare il valore di una ceckbox in un campo di database che è impostato in si/no
    queste sono le righe di comando:

    questa crea la ceckbox

    <input type="checkbox" name="attiva" id="checkbox"<% if recset("attiva").Value then Response.Write(" checked=""checked""") %> value="on" />

    questa prende il valore del campo "attiva" e prova a registrarla nella tabella di riferimento (il campo si chiama "attiva")

    RecSet("attiva") = Server.HTMLEncode(Replace(Request.Form("attiva"), "'", "′"))


    dove sbaglio?
    so che potrei cambiare il campo da boleano a testo ma mi piacerebbe mantenerlo così visto che il db esiste già ed e bello corposo.
    grazie

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Il value "on" potrebbe essere interpretato come "si" oppure "1".
    Controlla se il valore c'è (qualunque esso sia) e metti nel db 1 (se cliccato) o 0 mantenendo il campo bolean.

    Roby

  3. #3
    Roby,
    grazie per il suggerimento, ma avrei necessita' di qualche dettaglio in più:

    1) come faccio a fargli inserire 1 piuttosto che zero?
    2) perchè occorre controllare se il campo epieno? si potrebbe anche trattare della prima volta che inserisco questo campo
    3) nel DB access non devo fare nulla, corretto?

    grazie

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Non ho detto di controllare il campo (del db) ma il valore del campo (del form).
    Se passa qualcosa (on, 1, si) vuol dire che è "checked".

    Vediamo la tua query di inserimento/update.

    Roby

  5. #5
    ok
    questa è la riga che gestisce la checkbox
    <input type="checkbox" name="attiva" id="checkbox"<% if recset("attiva").Value then Response.Write("checked=""checked""")%> value="true" /></td>


    quando la ceckbox è "fleggata" il valore che passa è "true" e la query che scrive nel db fa il suo dovere

    questa è la query

    RecSet("attiva") = Server.HTMLEncode(Replace(Request.Form("attiva"), "'", "′"))
    RecSet.Update
    RecSet.Close
    Set RecSet = Nothing


    quando invece il valore della checkbox non è fleggato non passa alcun valore e l'errore che mi restituisce è

    Provider error '80070057'
    The parameter is incorrect.


    grazie sempre per la collaborazione

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    codice:
    <input type="checkbox" name="attiva" id="attiva" <% if recset("attiva").Value = 1 then Response.Write("checked=""checked""")%> value="1" /></td>
    
    
    quando la ceckbox è "fleggata" il valore che passa è "true" e la query che scrive nel db fa il suo dovere
    
    questa è la query
    if Request.Form("attiva") = 1 then
    attiva = 1
    else
    attiva = 0
    End if
    RecSet("attiva") = attiva
    RecSet.Update
    RecSet.Close
    Set RecSet = Nothing
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    edit il server ha fatto le bizze
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  8. #8
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    edit il server ha fatto le bizze a ridaie!!!!
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  9. #9
    ok, grazie ora funziona

    l'unica cosa che, dopo l'if la condizione non va posta =1 perchè il.value già soddisfa o meno la condizione stessa

    if recset("attiva").Value then...

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.