[RISOLTO] aggiorna tabella da select option asp classic

Stato
Chiusa ad ulteriori risposte.

sg2019

Nuovo Utente
17 Apr 2019
18
2
3
SICILIA
www.bronteportal.it
Salve. Ho un problema che spiego: Ho una select option con 2 valori "idoneo" "non idoneo" in base alla quale il programma deve effettuare opzioni diverse. Se è selezionato "idoneo" deve effettuare degli aggiornamento di tabelle ed inserimenti, se è selezionato "non idoneo" deve fare altre procedure. Ho provato con la condizione if else ma stranamente non tiene conto del nome della select option e effettua sempre la prima opzione. al momento non posso inserire il codice provato ma chiedo se forse si deve utilizzare una funzione javascript o jquery? grazie. Più tardi posto il codice.
Felice
 

sg2019

Nuovo Utente
17 Apr 2019
18
2
3
SICILIA
www.bronteportal.it
ciao Paolo. ecco il codice:

Codice:
   <form method="POST"action="addidoneoeg.asp">
<input type="radio" value="IDONEO" onkeypress="return (event.keyCode!=13)"  name="operazione" checked>IDONEO<input type="radio" value="NON IDONEO" name="operazione">NON IDONEO<INPUT TYPE="submit" VALUE="Invia" NAME="B5">
  <INPUT TYPE="reset" VALUE="Annulla" NAME="b6"></TR>
<%
   url_DB = "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("/mdb-database/sg2019.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
conn.Open url_DB

ido = Request.form("operazione")
if ido = "IDONEO" then
set recset=Server.CreateObject("ADODB.Recordset")
      CmdSQL="UPDATE [esami guida] SET [esami guida].[note] = 'IDONEO', [esami guida].idoneo = True , [esami guida].documentorilasciato = 'PATENTE GUIDA'  WHERE codice = '" & Request.querystring("codice") &"' "
               set Recset = Conn.Execute(CmdSQL)
Set RecSet = Nothing
elseif ido = "NON IDONEO" then

set recset=Server.CreateObject("ADODB.Recordset")
      CmdSQL="UPDATE [esami guida] SET [esami guida].[note] = 'NON IDONEO', [esami guida].idoneo = False  WHERE codice = '" & Request.querystring("codice") &"' "
               set Recset = Conn.Execute(CmdSQL)
Set RecSet = Nothing
end if
ho provato fino ad ora. credo che non tenga conto proprio della condizione if... boh
grazie
Felice
 
Ultima modifica di un moderatore:

Paolo69

Moderatore
Membro dello Staff
MOD
18 Feb 2010
527
13
18
Italy
www.riciclarte.info
prendi spunto da questo codice:
Codice:
<form method="POST" action="addidoneoeg.asp">
<input type="radio" name="operazione" value="0" checked>IDONEO<br />
<input type="radio" name="operazione" value="1">NON IDONEO<br />
<INPUT TYPE="submit" VALUE="Invia" NAME="B5"> 
<INPUT TYPE="reset" VALUE="Annulla" NAME="b6">
</form>
<%
   
    ' recupero i dati dai form
    If Request.Form("operazione") = "0" Then
   
        Response.Write("IDONEO")
   
    ElseIf Request.Form("operazione") = "1" Then
   
        Response.Write("NON IDONEO :(")

    End If

%>
Buona serata :)
 

Max 1

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
29 Feb 2012
4.008
295
83
@sg2019
Da regolamento del forum, come tutti noi sei tenuto ad usare il tag
quando posti del codice, oppure la funzione codice dalla barra degli strumenti

Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
Grazie
Per questa volta te lo sistemo io ma mi raccomando per il futuro
 

sg2019

Nuovo Utente
17 Apr 2019
18
2
3
SICILIA
www.bronteportal.it
Ciao paolo
allora l'esempio postato funziona. se clicco idoneo vedo scritto idoneo. se clicco non idoneo vedo scritto non idoneo.

Il problema è che io vorrei che il programma facesse delle query in base al risultato IDONEO/NON IDONEO. ti posto il codice
Codice:
    <%
  url_DB = "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("/mdb-database/sg2019.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
conn.Open url_DB

If Request.Form("operazione") = "0" Then


set recset=Server.CreateObject("ADODB.Recordset")
      CmdSQL="UPDATE [esami guida] SET [esami guida].[note] = 'IDONEO', [esami guida].idoneo = True , [esami guida].documentorilasciato = 'PATENTE GUIDA'  WHERE codice = '" & Request.querystring("codice") &"' "
               set Recset = Conn.Execute(CmdSQL)
Set RecSet = Nothing

set recsetAEG=Server.CreateObject("ADODB.Recordset")
      sql="INSERT INTO [archivio esami guida] ( idallievo, [data esame], idoneo, [data movimento], [data richiesta], [patente richiesta], [note], documentorilasciato, esterno, codice, esame ) SELECT [esami guida].idallievo, [esami guida].[data esame], [esami guida].idoneo, [esami guida].[data movimento], [esami guida].[Data richiesta], [esami guida].[patente richiesta], [esami guida].note, [esami guida].documentorilasciato, [esami guida].esterno, [esami guida].codice,  'ESAMI PRATICA PATENTE' & ' ' & [ESAMI GUIDA].[PATENTE RICHIESTA] AS esame FROM [esami guida] WHERE ((([esami guida].note)='IDONEO'))"
                  set RecsetAEG = Conn.Execute(sql)

Set RecSetAEG = Nothing

set recsetA=Server.CreateObject("ADODB.Recordset")
      sql="INSERT INTO archivio ( codice, data, esito, tipo ) SELECT [esami guida].codice, [esami guida].[data esame], [esami guida].idoneo, 'ESAMI PRATICA PATENTE' & ' ' & [ESAMI GUIDA].[PATENTE RICHIESTA] AS tipo FROM [esami guida] WHERE ((([esami guida].note)='IDONEO'))"
                  set RecsetA = Conn.Execute(sql)

Set RecSetA = Nothing


set recseti2p=Server.CreateObject("ADODB.Recordset")
      sql="UPDATE allievi INNER JOIN [scadenza patente] ON allievi.codice = [scadenza patente].codice SET allievi.scadenza = [scadenza patente].geta, allievi.categoria = [scadenza patente].[patente richiesta]  WHERE allievi.codice = '" & Request.querystring("codice") &"' "


                  set Recsetip2 = Conn.Execute(sql)

Set RecSetip2 = Nothing
%>
<hr>
<p align="center"><font face="Verdana" size="4" color="#00CC00"><b>Idoneità aggiunta con successo!</b></font></p>
<hr>
<p><a  onclick="if(window.opener)window.opener.location.href='esamiguida.asp';self.close();"
><font face="Verdana" size="2"><b>Clicca per chiudere la maschera</b></font></a></p>
<%


ElseIf Request.Form("operazione") = "1" Then


set recset=Server.CreateObject("ADODB.Recordset")
      CmdSQL="UPDATE [esami guida] SET [esami guida].[note] = 'NON IDONEO', [esami guida].idoneo = False  WHERE codice = '" & Request.querystring("codice") &"' "
               set Recset = Conn.Execute(CmdSQL)
Set RecSet = Nothing


set recsetA=Server.CreateObject("ADODB.Recordset")
      sql="INSERT INTO archivio ( codice, data, esito, tipo ) SELECT [esami guida].codice, [esami guida].[data esame], [esami guida].idoneo, 'NON IDONEO ESAMI PRATICA PATENTE' & ' ' & [ESAMI GUIDA].[PATENTE RICHIESTA] AS tipo FROM [esami guida] WHERE ((([esami guida].note)='NON IDONEO'))"
                  set RecsetA = Conn.Execute(sql)

Set RecSetA = Nothing %>

<hr>
<p align="center"><font face="Verdana" size="4" color="#ff0000"><b>Idoneità non aggiunta!</b></font></p>
<hr>
<p><a  onclick="if(window.opener)window.opener.location.href='menu.asp';self.close();"
><font face="Verdana" size="2"><b>Clicca per chiudere la maschera</b></font></a></p>
<%

end if

conn.close
%>
 

sg2019

Nuovo Utente
17 Apr 2019
18
2
3
SICILIA
www.bronteportal.it
Ciao paolo. Ho risolto. il problema era che non trovava il il request.querystring("codice") dell'altra pagina . Ho aggiunto tutto il codice nella pagina dove c'e' il form ed è andato tutto bene. grazie paolo. a presto
 
Stato
Chiusa ad ulteriori risposte.