È perché ti ostini a passare in value "Elimina" che ha utilità 0 nel tuo caso e niente di univoco, come l'id dello studente. Altra cosa, usare un email come id univoco non è proprio tanto bello
È perché ti ostini a passare in value "Elimina" che ha utilità 0 nel tuo caso e niente di univoco, come l'id dello studente. Altra cosa, usare un email come id univoco non è proprio tanto bello
<´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
"The answer to your question is: welcome to tomorrow"
Soluzioni ce ne sono un sacco, quella più vicina a quanto hai già realizzato è usare il parametro name del tag submit per passare un identificativo dello studente oltre che il nome della funzione.Originariamente inviato da Espyos
Andrea un minimo di conoscenza di html la ho, ma sto riscontrando problemi con java in jsp più che altro... so che viene passato da value il valore tramite getParameter, ma ciò viene letto n volte e cancella tutti gli studenti... scusate la mia irruenza nel richiedere aiuto , ma non riesco a trovare il bandolo della matassa...
Dovresti solo cambiare il tuo programma solo in un paio di punti.
Il problema vero è che tu hai usato come chiave primaria l'email, è scomoda da utilizzare inoltre non è detto che un utente non voglia cambiarla.
...
si l'email è un fatto che devo cambiare, mi sono reso conto che è sbagliato. Quindi come devo agire a livello di codice? non riesco proprio a capire.. scusa se insisto
Questo è un esempio che ricicla il codice che hai scritto, ipotizzando che tu introduca un campo id. Il resto sta a te.codice:<td> <center> <form action="" method="post"> <input type="submit" name="inviaBtn<%= listaStudenti.get(i).getId()%>" value="Elimina" /></p> <% if (request.getParameter("inviaBtn"+listaStudenti.get(i).getId())!= null) { StudenteDAO.getInstance().delete(listaStudenti.get(i).getE_mail()); response.setHeader("Refresh","0 ; lista_utenti.jsp"); } %> </center> </td>
Altra cosetta, ti consiglierei di istanziare un oggetto Studenti valorizzandolo a listaStudenti.get(i) in modo da fare la get una volta sola nella pagina.
...
Appena provato e funziona! Ti ringrazio tanto![]()
scusate se riapro la questione, ma se io dovessi passare piu di una variabile attraverso form come faccio??
aggiungi i vari campi di testo, select, radiobutton etc etc in numero e qualità come ritenuto necessario: guida html
<´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
"The answer to your question is: welcome to tomorrow"
Si scusami sempre ma non sono riuscito a trovare soluzione. Praticamente questa volta nella pagina ho un metodo simile a quello che si trovava nel codice corretto postato da Caiodark, ma questa volta devo passare ben 3 valori a questo metodo (che è diverso dal precedente) e non riesco in nessun modo a passarglieli dato che se stampo a schermo i dati presi mi restituisce tre null... ho provato a usare per tre volte l'input (hidden) ma niente...