Solved

Get a row information of a table by click "BUY" button which exist at end of each row using servlet and javascript

Posted on 2006-10-31
2
211 Views
Last Modified: 2013-11-24
hi experts

i have a Servlet , this servlet contain the table of books(isbn , title  , userid , quantity) , and at the end of each row in this table i but a buton tell the user to BUY this book , the problem is i want when the user press the button "BUY" for specific book , i want to save the values of each filed in this row in ahidden html text boxs.(isbn , title  , userid , quantity) , beacuse i want to save this row in the orders table .    this my job >>>  this is my incomplete servlet  , i want when the user press "BUY" button for specific book , get the information of this book in a hidden html text boxs.


/*
 * ShowBooks.java
 *
 * Created on October 30, 2006, 12:09 PM
 */

package p2;

import java.io.*;
import java.net.*;
import java.sql.ResultSetMetaData;

import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;

/**
 *
 * @author amohammad
 * @version
 */
public class ShowBooks extends HttpServlet {
   
    /** Processes requests for both HTTP <code>GET</code> and <code>POST</code> methods.
     * @param request servlet request
     * @param response servlet response
     */
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
       throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
       
       
       
        out.write("<script language=\"JavaScript\">\n");
        out.write("    function getIsbn() { \n" +
     // "   document.getElementById('isbn').value = Pisbn       \n" +
       
     
      //  "     document.forms(0).submit();\n" +
        "      \n" +
        "    }");
        out.write("</script>\n");
       
       
       
       
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Servlet ShowBooks</title>");
        out.println("</head>");
        out.println("<body>");
       out.print(" <input type='hidden' name='isbn'/> ");
       out.print(" <input type='hidden' name='title'/> ");
       out.print(" <input type='hidden' name='userid'/> ");
        out.print(" <input type='hidden' name='quantity'/> ");
        out.println("<form name=\"fm\" action=\"ShowBooks\" method=\"Post\">\n" +
        "      <table cellspacing=\"3\" cellpadding=\"2\" border=\"1\" width=\"100%\">\n" +
        "        <tr>\n" );
       
       
         out.println(" <input type=\"submit\" name=\"srch\"  size=\"60\" value=\"Search Book\"/>");
          out.println("<TABLE BORDER=1>");
         
         try {
         
         
                    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
         
             Connection connection = DriverManager.getConnection("jdbc:odbc:books","","");
          Statement statement = connection.createStatement();
          ResultSet results = statement.executeQuery("select * from books ;");
         
         
       
         //out.println("<TABLE  BORDER=1>");
         ResultSetMetaData resultsMetaData =
          results.getMetaData();
         int columnCount = resultsMetaData.getColumnCount();
         
         
         
         
         
         out.println("<TR>");
         for(int i=1; i<columnCount+1; i++) {
              out.println("<TH>"  +
              resultsMetaData.getColumnName(i) ) ;
         }
             
                 
          while( results.next() ) {
       
         out.println("<TR>");
         
         for(int i=1; i<columnCount+1; i++) {
                   
             out.print("<TD>" + results.getString(i));

         }
         
         int o = 3 ;
            out.print("<TD> <input type=\"button\" name=\"buy \"  onclick=\"getIsbn()\" size=\"60\" value=\" BUY\"    /> </TD>");

           
       }
                                 
                 statement.close();
                 results.close();
                 connection.close();
       }
       
       catch (Exception e) {
           System.out.println(e);
           
         
       }
       
        out.println("</TABLE>");
        out.println("</form>");
        out.println("</body>");
        out.println("</html>");
       
        out.close();
    }
   
    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
    /** Handles the HTTP <code>GET</code> method.
     * @param request servlet request
     * @param response servlet response
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
       
         response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
             
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Servlet ShowBooks</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<form name=\"fm\" action=\"ShowBooks\" method=\"Post\">\n" +
        "      <table cellspacing=\"3\" cellpadding=\"2\" border=\"1\" width=\"100%\">\n" +
        "        <tr>\n" );
       
       
         out.println(" <input type=\"submit\" name=\"srch\"  size=\"60\" value=\"Search Book\"/>");
         out.println("</form>");
        out.println("</body>");
        out.println("</html>");
       
       
    }
   
    /** Handles the HTTP <code>POST</code> method.
     * @param request servlet request
     * @param response servlet response
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {

             processRequest(request, response);
           
           
             //out.println("</table");
   
             
             
         
       
       
       
       
       
       
       
    }
   
    /** Returns a short description of the servlet.
     */
    public String getServletInfo() {
        return "Short description";
    }
    // </editor-fold>
}



this servlet contain a button when you press this button a list of the books appear with "BUY" button next each row

please please   help me

thank you
0
Comment
Question by:moodyahmad
2 Comments
 
LVL 4

Accepted Solution

by:
pzepernick earned 500 total points
ID: 17841673
Just do a separate form tag in each row of the table.  Each one can point back to the same servlet, and you can reuse the field names in each of the different forms.

Paul
0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

After being asked a question last year, I went into one of my moods where I did some research and code just for the fun and learning of it all.  Subsequently, from this journey, I put together this article on "Range Searching Using Visual Basic.NET …
Introduction This article is the second of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers the basic installation and configuration of the test automation tools used by…
Viewers will learn about basic arrays, how to declare them, and how to use them. Introduction and definition: Declare an array and cover the syntax of declaring them: Initialize every index in the created array: Example/Features of a basic arr…
The viewer will learn how to implement Singleton Design Pattern in Java.

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now