Avatar billede mikmakmuk Nybegynder
16. januar 2003 - 02:24 Der er 10 kommentarer og
1 løsning

toString() (servlet)

Jeg har en int som jeg henter i min database (autoincrement)

int    id  = rsnews.getInt(1);

det virker også fint nok. Mit problem er bare at jeg skal bruge værdien som et hidden felt til at identificere en række i en tabel.

int    id  = rsnews.getInt(1);
                    String date = rsnews.getString(2);
                    String news = rsnews.getString(3);
                   
                    out.println("<tr><td>");
                      out.println(date);
                    out.println("</td><td>");
                    out.println(news);
                    out.println("</td><td>");
                    out.println("<form method='post' name='delnews' action='Edit'>");
                    out.println("<input type='hidden' name='page' value='news'>");
                    out.println("<input type='button' name='newsid' value="+id+" onClick='document.delnews.submit();'>");
                    out.println("</form>");

I Edit klassen opstår problemet så

String newsid = request.getParameter ("newsid");

newsid er jo ikke en String.
Avatar billede mikmakmuk Nybegynder
16. januar 2003 - 02:25 #1
Jeg har prøvet at lave den om til en streng med int    id  = rsnews.getInt(1).toString();
Avatar billede mikmakmuk Nybegynder
16. januar 2003 - 02:26 #2
String id  = rsnews.getInt(1).toString();
Avatar billede mosquito Nybegynder
16. januar 2003 - 02:29 #3
prøv med int id = Integer.parseInt(rsnews.getInt(1))
så vidt jeg husker...
du parse din string til en int
Avatar billede mikmakmuk Nybegynder
16. januar 2003 - 02:32 #4
jeg kunne jo også bare prøve at gøre det jeg selv har beskrevet *lol*
Avatar billede mikmakmuk Nybegynder
16. januar 2003 - 02:33 #5
Jeg havde jo slet ikke det hidden field med som jeg skulle bruge
Avatar billede mosquito Nybegynder
16. januar 2003 - 02:35 #6
jeg er ikke helt sikker på hvad det er du vil.. men nu vil jeg sq i seng.. håber du får dit problem løst
Avatar billede mikmakmuk Nybegynder
16. januar 2003 - 02:35 #7
Tak for svaret
Avatar billede jakoba Nybegynder
16. januar 2003 - 03:23 #8
html forms sender sædvanligvis alt i string format, så check lige en extra gang gang om ikke den newsid du får faktisk ER en string.
    String newsid = request.getParameter ("newsid");
    out.println( "newsid er >" +newsid +"<\n" );
Avatar billede arne_v Ekspert
16. januar 2003 - 07:34 #9
Jeg forstår slet ikke problemet !

Først har du:

int id  = rsnews.getInt(1);  // henter ID fra database (lad os sige ID er 77)

out.println("<input type='button' name='newsid' value="+id+">"); // som udskriver <input type='button' name='newsid' value=77>

Og så har du:

String newsid = request.getParameter ("newsid"); // som henter "77"

Det bør vel virke !

To kommentarer:
1) Jeg ville putte '' omkring id selveom det er tal. Altså
  value='"+id+"' (så er du klar til XHTML !).
2) Du kan få newsid som int i Edit med:
      int newsid = Integer.parseInt(request.getParameter ("newsid"));
Avatar billede mikmakmuk Nybegynder
16. januar 2003 - 11:02 #10
Jeg har fået det til at virke :-)

Problemet viste dig at være at jeg ikke have det hidden field som jeg skulle bruge.

out.println("<input type='hidden' name='newsid' value='"+id+"'>");

Det havde ikke noget at gøre med datatyper som jeg troede. Tak for hjælpen alle sammen
Avatar billede mikmakmuk Nybegynder
08. april 2003 - 12:16 #11
lukker :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester