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

Discussione: Controllo per data

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    708

    Controllo per data

    Ciao

    sto realizzando un form di inserimento dati. A questo file ho inserito un controllo per il campo data che mi visualizza un messaggio in caso di mancato inserimento ma subito dopo il msg visualizzo l'errore del mancato inserimento.

    Inserendo questo codice:

    codice:
    if giorno="" and mese="" and anno="" data= Response.Write("Data non inserita!")
    visualizzo correttamente il messaggio ma poi ottengo questo errore:

    codice:
    Microsoft JET Database Engine error '80040e07'
    
    Syntax error in date in query expression '##'.
    Come posso non visualizzare + questo errore?

    Dopo vorrei inserire vicino al campo da compilare il messaggio di mancato inserimento.

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,134
    Posta il codice che usi veramente nella pagina, quello che hai scritto è errato
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    708
    Per la data utilizzo 2 select per giorno e mese e una textbox per anno:

    codice:
        <select name="GIORNO" id="GIORNO">
    	<option value="00">- Giorno -</option>
            <option></option>
    	<option value="01">01</option>
    	<option value="02">02</option>
            ...
    	<option value="30">30</option>
            <option value="31">31</option>
          </select>
      
      <select name="MESE" id="MESE">
            <option value="00">- Mese -</option>
            <option></option>
            <option value="01">gennaio</option>
            <option value="02">febbraio</option>
             ...
            <option value="11">novembre</option>
            <option value="12">dicembre</option>
          </select>
      
      <input name="ANNO" type="text" id="ANNO" size="4" maxlength="4" />
          Formato: gg/mm/anno</td>
    codice:
    prima_immatricolazione=request.form("GIORNO")&"/"&request.form("MESE")&"/"&request.form("ANNO")
    codice:
    if giorno="" and mese="" and anno="" then prima_immatricolazione= Response.Write("Prima immatricolaz. non inserita!")
    codice:
    SQL = "Insert Into TabPreventivo (...DATA...) Values(...#"&prima_immatricolazione&"#....)"

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,134
    if giorno="" and mese="" and anno="" then
    prima_immatricolazione= "Prima immatricolaz. non inserita!"
    else
    prima_immatricolazione= data
    End if
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    708
    nel mio precedente post ho dato un nome alla variabile diversa per errore.

    Reinserisco il codice correttamente:

    codice:
    prima_immatricolazione=request.form("GIORNO")&"/"&request.form("MESE")&"/"&request.form("ANNO")
    
     if giorno="" and mese="" and anno="" then prima_immatricolazione= Response.Write("Prima immatricolaz. non inserita!")
    
    SQL = "Insert Into TabPreventivo (...DATA...) Values(...#"&prima_immatricolazione&"#....)"
    quindi modifico anche il controllo di cavicchiandrea aggiungendo mio codice:

    codice:
    Dim msg_immatr_v
    msg_immatr_v = Response.Write("Prima immatricolaz. non inserita!")
    
    if giorno="" and mese="" and anno="" then
    Response.Write(msg_immatr_v)
    else
    msg_immatr_v= prima_immatricolazione
    End if
    inserendo questo codice visualizzo sempre il messaggio ed anche:
    [code
    ]
    Microsoft JET Database Engine error '80040e07'

    Syntax error in date in query expression '#00/00/#'.

    [/code]

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Fatti stampare a video la query che cerchi di eseguire così capisci l'errore, legato al formato data.

    Roby

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    708
    quello che mi stampa a video è questo:

    ho corretto così:

    codice:
    if giorno="" and mese="" and anno="" then
    prima_immatricolazione = "00/00/0000"
    else
    msg_immatr_v = prima_immatricolazione
    End if
    
    Prima immatricolaz. non inserita!Insert Into TabPreventivo (...PRIMA_IMMATRICOLAZIONE...) Values(...#00/00/0000#...)
    ovviamente mi da lo stesso errore!

    So che se non s'inserisce la data mi da errore infatti nei casi precedenti inserivo questo controllo:

    if giorno="" and mese="" and anno="" then nome_campo=date()

    ma in questo caso non posso far inserire la data odierna xchè non sarebbe corretta la data di immatricolazione. In verità non saprei nemmeno come si usa in questi casi, bloccare lo script e vicino al campo in questione inserire un msg di avvertimento che il valore non è stato inserito?

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ma questa ti sembra una query?

    Insert Into TabPreventivo (...PRIMA_IMMATRICOLAZIONE...) Values(...#00/00/0000#...)

    Roby

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    708
    no, quella è il response.write dell'sql che mi hai chiesto.

    La mia sql è questa:

    codice:
    SQL = "Insert Into TabPreventivo (CARROZZERIA, PRIMA_IMMATRICOLAZIONE,TIPO_GUIDA) Values(...'"&carrozzeria&"',#"&prima_immatricolazione&"#,'"&tipo_guida&"'.....)"
    poi il:
    codice:
    response.write SQL
    Il risultato della query, se inserisco la data, quindi senza errore è:

    codice:
    Insert Into TabPreventivo (...Berlina 2 volumi',#01/02/2001#,'Guida Illimitata'...)
    Non sapendo + come scavalcare l'errore ho provato ad inserire questo controllo:

    codice:
    if giorno="" and mese="" and anno="" then
    prima_immatricolazione = "00/00/0000"
    else
    msg_immatr_v = prima_immatricolazione
    End if
    ...per quello che viene fuori:



    Compilando il form come prima, ma non iserendo la data, ottengo nuovamente l'errore.
    codice:
    Microsoft JET Database Engine error '80040e07'
    
    Syntax error in date in query expression '#00/00/0000#'.
    Ora non so + cosa fare x far visualizzare il messaggio di mancato inserimento.

  10. #10
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ma cosa sono quei puntini nella query???

    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 © 2026 vBulletin Solutions, Inc. All rights reserved.