Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从jsp页面表获取值_Java_Html_Mysql_Sql_Jsp - Fatal编程技术网

Java 从jsp页面表获取值

Java 从jsp页面表获取值,java,html,mysql,sql,jsp,Java,Html,Mysql,Sql,Jsp,我想从jsp页面表中获取值,并使用reservations.jsp将其插入数据库。在下面的代码中,我可以在表中获得名为“Buy”的选项部件,但我无法在表中获得activityId部件。它在数据库中返回null。在reservations.jsp中,不要阅读actvityId1。我认为问题在于activityid1部分的代码没有包含类似“name='buy'”这样的代码。如何获取activityId1值 music.jsp <%@page contentType="text/html" p

我想从jsp页面表中获取值,并使用reservations.jsp将其插入数据库。在下面的代码中,我可以在表中获得名为“Buy”的选项部件,但我无法在表中获得activityId部件。它在数据库中返回null。在reservations.jsp中,不要阅读actvityId1。我认为问题在于activityid1部分的代码没有包含类似“name='buy'”这样的代码。如何获取activityId1值

music.jsp

 <%@page contentType="text/html" pageEncoding="UTF-8"%>
 <%@ page import ="java.sql.*" %>




<!DOCTYPE html>
<html>
<body background="http://www.teamarking.com/barcode/bar_background.jpg"> 
    <form method="post" action="reservations.jsp">

        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Book Ticket</title>
    </head>

    <center>    
        <table border="1" width="30%" height="30%">
            <th><font color='#D18603'>ActivityID</font>
            <th><font color='#D18603'>Type</font></th>
            <th><font color='#D18603'>Description</font></th>
            <th><font color='#D18603'>City</font></th>
            <th><font color='#D18603'>Location</font></th>
            <th><font color='#D18603'>Date</font></th>
            <th><font color='#D18603'>Price</font></th>
            <th><font color='#D18603'>Buy</font>
                <form action="some.jsp">

                    </tr>

                    <form method="post">



                        <%
                            Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();
                            Connection con = DriverManager.getConnection("jdbc:derby://localhost:1527/users", "users", "123");

                            Statement st = con.createStatement();
                            ResultSet rs;
                            rs = st.executeQuery("select * from activities where type='müzik'");
                            while (rs.next()) {

                                String activityid1 = rs.getString("id");
                                String type1 = rs.getString("type");
                                String description1 = rs.getString("description");
                                String city1 = rs.getString("city");
                                String location1 = rs.getString("location");
                                String date1 = rs.getString("date");
                                String price1 = rs.getString("price");

                                out.println("<tr>");
                                out.println("<td>" + activityid1 + "</td>");
                                out.println("<td>" + type1 + "</td>");
                                out.println("<td>" + description1 + "</td>");
                                out.println("<td>" + city1 + "</td>");
                                out.println("<td>" + location1 + "</td>");
                                out.println("<td>" + date1 + "</td>");
                                out.println("<td>" + price1 + "</td>");
                                out.println("<td><b><form action='reservations.jsp'><select name='buy'><option value='1'>1</option><option value='2'>2</option><option value='3'>3</option><option value='4'>4</option><option value='5'>5</option></select><input type='submit' value='Submit'></form></b>");
                                out.println("</tr>");

                            }
                            st.close();

                        %>


                        </center>
                        </table>
                        <tr>
                        <td><input type="reset" value="Reset" /></td>
                        </tr> 
                    </form>
                    <br><br><a href='logout.jsp'>Log out</a>
                </form>
                </body>
                </html>

订票
活动ID
类型
描述
城市
位置
日期
价格
购买


reservations.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ page import ="java.sql.*" %>
<%
request.getParameter("activityid1");
request.getParameter("buy");
String username = (String) request.getSession().getAttribute("username");

Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();
Connection con = DriverManager.getConnection("jdbc:derby://localhost:1527/users", "users", "123");

String sorgu = "INSERT INTO reservation(id,username,buy) VALUES ('" + activityid1 + "', '" + username + "','" + request.getParameter("buy") + "') ";

java.sql.Statement st = con.createStatement();

int rowNum = st.executeUpdate(sorgu);
response.sendRedirect("paypal.html");
st.close();
%>

活动ID 1不是表单的一部分。其值不随请求一起发送。您需要将其添加为表单的隐藏元素:

out.println("<td><b><form action='reservations.jsp'><select name='buy'><option value='1'>1</option><option value='2'>2</option><option value='3'>3</option><option value='4'>4</option><option value='5'>5</option></select><input type='submit' value='Submit'>  <input type=\"hidden\" id=\"activityid1Value\" name=\"activityid1Hidden\" value=\""+activityid1 +"\"></form></b>");

希望我能为您提供帮助活动ID1不在表单中。其值不随请求一起发送。您需要将其添加为表单的隐藏元素:

out.println("<td><b><form action='reservations.jsp'><select name='buy'><option value='1'>1</option><option value='2'>2</option><option value='3'>3</option><option value='4'>4</option><option value='5'>5</option></select><input type='submit' value='Submit'>  <input type=\"hidden\" id=\"activityid1Value\" name=\"activityid1Hidden\" value=\""+activityid1 +"\"></form></b>");

希望我能帮助您

您在哪里创建
buy
按钮输入?是否是表单的
提交
?可能与您的问题无关,但代码容易受到SQL注入的攻击。在第一个代码中使用
PreparedStatement
。我会的,但现在更重要的是:)您在哪里创建
buy
按钮输入?是否是表单的
提交
?可能与您的问题无关,但代码容易受到SQL注入的攻击。在第一个代码中使用
PreparedStatement
。我会的,但现在这更重要:)