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

    inserimento dato obbligatorio?

    ciao a tutti e buona giornata. mi sto imbatendo in un problema che non so se è stupido oppure se non mi è chiaro qualcosa..

    in pratica io ho una pagina di inserimento che riprende dati da un form e li inserisce nel database.
    inserisco id, nome, cognome, compito e data scadenza (del compito) per ogni utente. e tutto funziona..se inserisco tutti i campi. cioè: se lascio vuoto il campo datascadenza il sistema mi si blocca e non mi effettua il salvataggio mentre se lascio vuoto uno degli altri campi non mi salva niente in quel campo del db ma tutti gli altri sono apposto.
    il problema è che a non tutti gli utenti viene assegnato un compito da svolgere, quindi, la datascadenza sarebbe inutile metterla x loro..come devo fare? esiste un attributo della form in cui scrivo x dire che i campi non sono obbligatori?

    il codice della pagina di salvataggio è questa:

    codice:
      <%
    
    set OBJdbConnection=Server.CreateObject("ADODB.Connection")
    
    OBJdbConnection.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("/sito/database.mdb")
    Set rs=server.CreateObject("ADODB.Recordset")
    
    
    rs.Open "utente",OBJdbConnection,3,3
    
     
    rs.AddNew
    
    rs("ID") = request.form("id")
     
    rs("nome") = request.form("nome")
     
    rs("cognome") = request.Form("cognome")
     
    rs("compito") = request.Form("compito")
     
    rs("datascadenza") = request.Form("datascadenza")
    
     
    rs.update
     
    rs.Close
     
     
    OBJdbConnection.Close
    %>
    grazie a tutti

  2. #2
    l'attributo "obbligatorio" sta nel db, non nella form

  3. #3
    infatti, il mio dubbio sorge proprio da questo:

    nel mio db access ho settato il campo datascadenza di tipo data/ora e negli attributi su RICHIESTO ho settato il NO quindi, a rigor di logica, se non lo inserisco come valore dalla form non mi dovrebbe creare problemi e invece..li crea. credevo quindi che ci potesse essere un attributo della form o della text area o nella fase di inserimento che mi potesse permettere di inserire o meno alcuni dati...

  4. #4
    dentro access ci dovrebbe essere anche un attributo del tipo "accetta valori vuoti" devi metterlo a si

  5. #5
    purtroppo quel tipo di opzione c'è per i campi numerici e testuali..ma non c'è per il campo data

    allora stavo studiando la possibilità di creare un ciclo. se il campo della form è pieno mi salva il valore della form altrimenti mi salva nel db un valore nullo..ma ancora mi da problemi..bisogna che lo studio meglio..

    codice:
     if isnull (request.form("datascadenza))=false then
    rs("datascadenza") = request.form("datascadenza)
    else
    rs("datascadenza") = null
    end if

  6. #6
    1. quello non è un ciclo, è una condizione
    2. che problemi ti dà?

  7. #7
    si..in effetti ho commesso una gaffe clamorosa!

    ho appena risolto in questo modo: ho scoperto che per le date c'è un comando apposta per vedere se è vuoto oppure no e si chiama IsDate!

    mi sono creata una variabile di appoggio su cui salvo il valore della data e su cui compio la condizione..e adesso mi funziona!

    posto il codice che ho scritto..prima o poi potrebbe servire a qualcuno

    codice:
    dim data
    data= request.form("datascadenza")
    
    Dim Variabile
    If IsDate(Data)=True Then
    Variabile = Data
    else
    Variabile=Null
    end If
    
    rs("Datascadenza") = variabile
    ciao ciao e grazie

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.