PDA

View Full Version : JSP e commando select..aiutatemi!


deandrè
29-12-2005, 11:51
Alle prime armi con jsp
voglio realizzare un form che permette di ricercare un elemento nel database.

Ho realizzato dunque questo form.htm che richiede titolo e autore di un libro che si vuole ricercare e processa correttamente ad una pagina jsp.

Ora qui ho problemi con il comando select:
quello che voglio io e che appaiono solo libri cui titolo sia quello inserito dall'utente nel forum.

Ho provato cosi:

// prendo la variabile dal form.
String title = request.getParameter("title");


// Interrogo il DBMS mediante una query SQL.
ResultSet resultset = statement.executeQuery(
"SELECT Titolo, Anno, Autore "
+ " FROM Libri "
+ " where Titolo like ' %title% ' "
);
// Scorro e mostro i risultati.

while (resultset.next()) {
String Titolo = resultset.getString(1);
String Anno = resultset.getString(2);
String Autore = resultset.getString(3);

%>


Tuttavia non mi appare niente nella lista, solo una pagina bianca... :(

franksisca
29-12-2005, 18:00
ti dà una sringa bianca perchè il while sul resugliata(ho scoperto l'acqua calda;))uery è sbagliata(ho scoperto l'acqua calda;))
esattamente, che cosa intendi con
where Titolo like ' %title% '

forse dovresti fare cosìwhere Titolo='%title%'
facci sapere.

0rph3n
29-12-2005, 18:51
forse dovresti fare cosìwhere Titolo='%title%'
se non sbaglio (molto probabile comunque) il wildcard % dovrebbero andare solo con il LIKE.
altra cosa, premetto che non conosco JSP, ma questo non penso sia corretto:
+ " where Titolo like ' %title% ' "
non dovrebbe pittosto essere:
+ " where Titolo like '%" + title + "%' "?

'iao

franksisca
30-12-2005, 00:11
guarda, riguardando il mio codice di una applicazione, io faccio così:
<%=s%> dove s è la stringa, naturalmente.

Premetto l'applicazione lavora con apache e con dreamweaver, ma credo sia rrilevante....

Napalm
30-12-2005, 07:51
Se title è una variabile java allora (mi pare sia il tuo caso):
+ " where Titolo like '%"+title+"%' "
mentre è un proprio cosa cerchi tu:
+ " where Titolo like '%title%' "

NapalM

deandrè
30-12-2005, 16:10
GRAZIE NAPLAM!
mitico! stavo impazzendo.

Grazie a tutti quelli che mi hanno risposto :)

deandrè
30-12-2005, 16:13
e se volessi fare una cosa tipo il titolo non è presente mi deve dare un messaggio di errore :fiufiu: ?

Lo so non vorrei abusare della vostra pazienza però se avete qualche consiglio o un pezzo di codice già pronto...(è natale...)

Grazie