|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
|
[JSP] Problema dopo ricerca su db
In una pagina jsp impagino i risultati della ricerca su un db. Ad ogni riga di record estratti è associato un radiobutton e, cliccandoci, si passa ad una pagina di dettaglio relativa al record selezionato.
Il problema è questo: vorrei passare i dati che mi servono senza ricorrere alla riscrittura dell'indirizzo e senza fare una nuova connessione al db dalla pagina di dettaglio, ma utilizzando delle session. E' possibile una cosa del genere? Spero di essere stato abbastanza chiaro |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 414
|
Cioè praticamente vorresti eseguire una sola query che carichi la prima pagina e momorizzi i dati nella sessione e poi al click sul radio venga aperta un'altra pagina ho un popup che visulizza anche altre informazioni di dettaglio.
Se ho capito bene a seconda di come la vui realizzare puoi utilizzare sessioni con altre pagine, sessioni e popup, o addirittura solo js. Cosa scegli?? che cosi scendo in dettaglio. |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
|
Quote:
Non so quale scegliere..dimmi tu quale conviene di più. Le mie sono delle pagine che "girano" solo su una rete locale |
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 414
|
Be Mettiamo tutto in dettaglio:
Si apre la pagina di ricerca che esegue una query, e restituisce una pagina html con dei radio button ok. Quando clicco sui radio button cosa succede: 1) mi si carica una nuova pagina con all'interno i dettagli di quel record, che avevo memorizzato precedentemente in sessione(qui pero mi cambia l'indirizzo della pagina ). 2)mi esce fuori una popup che apre sempre il dettaglio del regord memorizzato in sessione. 3)mi compare una tabella del tipo quelle che compaiono su questo forum quando clicchi sull'utente con all'interno i dati in dettaglio che sono gia presenti nella pagina html scaricata e non nella sessione del server. Io comunque ti dico, che puoi memorizzare tutti i dettagli di tutti i record nella sessione ma non è una cosa molto performante!!! |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
|
Scusami, potresti essere più chiaro?
Comunque, non ho intenzione di memorizzare nelle sessioni i dettagli di tutti i record |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 414
|
Allora aspetta stiamo divagando un pò.
Carico la prima pagina, clicco sul button e compare(non si sa come) una seconda pagina che prende i dati di dettaglio dalla sessione Ok. Quindi la prima pagina oltre a caricare e visualizzare i suoi dati deve anche caricare i dati di dettaglio in sessione Ok. |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
|
Cerco di essere più chiaro...
Richiamo la pagina di ricerca che, dato un parametro, mi effettua una ricerca sul db e mi stampa a video alcuni record. Ad ognuno di questi record ho associato un radiobutton con questo codice: Codice:
<input name="radiobutton" type="radio" onClick="getID()" value="<%= rs.getInt("IdClienti") %>"> Codice:
function getID(){ open('dettaglio.jsp', '_self'); } in questo modo potrei passare facilmente le informazioni che mi interessano con la riscrittura dell'indirizzo, però, se alcuni campi che passo contengono caratteri particolari (virgole, punti, ecc) credo ke sorgano dei problemi (a dir la verità non ho fatto la prova, ma credo che sia così). Potrei anche passare solo l'id del record e fare una query nella pagina di dettaglio, ma credo che sia solo un qualcosa di più. Per questo motivo ho pensato alle sessioni, ma il problema è che non so come memorizzare solo le informazioni del record selezionato |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 414
|
Adesso ho più o meno capito, la soluzione migliore secondo me è che inserisci tutti i dati nell'url come get, non ti preoccupare per i caratteri speciali vengono decodificati in maniera automatica.
|
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
|
Volendo utilizzare dei campi nascosti in cui inserisco i valori che mi servono? Dalla pagina di dettaglio riesco a recuperare il valore di questi campi?
|
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 414
|
Per recuperare i valori dei campi nascosti devi inserirli all'interno di un form e poi eseguire il submit del suddetto.
Per eseguire il submit in js è sufficente: nomeform.submit(); (se non erro) |
![]() |
![]() |
![]() |
#11 | |
Senior Member
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
|
Quote:
Ho fatto una prova..Se riscrivo l'indirizzo passando i valori del record selezionato, in presenza di caratteri particolari (io ho provato con l'apice) si verifica un errore |
|
![]() |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 414
|
Per i caratteri speciali si utilizza la codifica (che dovrebbe essere automatica ) "%CC" dove "CC" sono le due cifre corrispondenti al carattere esedecimale in codifica ascii che si vuole inviare, per esempio invece del carattere 'a' puoi scrivere tranquillamente "%61", se vuoi prova ad aprire:
http://www.ansa.it http://www.%61nsa.it vedi cosa cambia ![]() Ciao |
![]() |
![]() |
![]() |
#13 | |
Senior Member
Iscritto dal: Aug 2004
Città: Salento
Messaggi: 1080
|
Quote:
Grazie per l'aiuto!! |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 18:50.