2016-04-26 6 views
-1

У меня есть страница jsp, в которой пользователь должен указать пункт: город, страна, url_of_city и 3 флажок с указанием места назначения (лето, зима, Рождество), он может проверить макс. 2 поля, поэтому мне нужно взять результаты этого и вставить их в базу данных, чтобы позднее можно было найти этот пункт назначения, как я могу это сделать?Флажок (JSP PAGE) и вставить в базу данных mysql

код

MySQL:

CREATE TABLE DEST_C(ID_DEST_C INT(5),CATEGORY VARCHAR(45)) 
CREATE TABLE DEST(ID1_DEST INT(6),ID2_DEST INT (6),COUNTRY VARCHAR(40),CITY VARCHAR(40),URL VARCHAR(5400)); 

форма JSP код:

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>create dest</title> 
    </head> 
    <body> 
     <html> 
    <head> 
     <title>CREATE DESTINATION</title> 
     <meta charset="UTF-8"> 
     <meta name="viewport" content="width=device-width, initial-scale=1.0"> 
    </head> 
    <body> 
     <h1> CREATING DESTINATION </h1> 
     <form name="createdest" method="get" action="create dest code.jsp"> 
     Country: <input type="text" required name="id8" /> <br> 
     City: <input type="text" required name="id9" /> <br> 
     URL Video: <input type="url" required name="id10" /> <br> <br> 
     <i><ins>Categorize the destination (max 2): </ins></i> <br> <br> 
     <input type="checkbox" name="id5" value="1" onClick="return KeepCount()" >Christmas<br> 
     <input type="checkbox" name="id6" value="2" onClick="return KeepCount()" >Winter <br> 
     <input type="checkbox" name="id7" value="3" onClick="return KeepCount()" >Summer <br> <br> 

     <input type="submit" value="CREATE DESTINATION" /> 


     <br> 


     </form> 
     <SCRIPT LANGUAGE="javascript"> 

function KeepCount() { 

var NewCount = 0 

if (document.createdest.id5.checked) 
{NewCount = NewCount + 1} 

if (document.createdest.id6.checked) 
{NewCount = NewCount + 1} 

if (document.createdest.id7.checked) 
{NewCount = NewCount + 1} 

if (NewCount == 3) 
{ 
alert('Pick Just Two Please') 
document.createdest; return false; 
} 
} 
</SCRIPT> 

JSP Код для вставки:

<%@page import="java.sql.*" %> 
<%@page contentType="text/html" pageEncoding="UTF-8"%> 
<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
     <title>create dest code</title> 
    </head> 
    <body> 
     <% 
    int m[] = new int[5000]; String s[] = new String[5000];   
    Class.forName("com.mysql.jdbc.Driver"); 
    String myDatabase = "jdbc:mysql://localhost:3306/project_app?user=root&password=1234"; 
    Connection myConnection = DriverManager.getConnection(myDatabase); 
    Statement myStatement = myConnection.createStatement(); 
    boolean check=null!=request.getParameter("id5"); 
    boolean check1=null!=request.getParameter("id6"); 
    boolean check2=null!=request.getParameter("id7"); 
    String id8=request.getParameter("id8"); 
    String id9=request.getParameter("id9"); 
    String id10=request.getParameter("id10"); 
    String sqlString = "INSERT INTO DEST(COUNTRY,CITY,URL) VALUES ('"+id8+"', '"+id9+"','"+id10+"')"; 
    myStatement.executeUpdate(sqlString); 
    myStatement.executeUpdate(sqlString1); 
    myStatement.close(); 
    myConnection.close(); %> 
    </body> 
    <h1 style="color:blue;">Successful Registration </h1> 
</html> 
+1

Вопрос не ясен. Sar –

+0

Вопрос не ясен, и имена столбцов не указаны. Если вы дадите свои ключевые поля лучшим именам, решение может стать более очевидным. – Yuck

+0

Почему вы добавили JSP-код? Какое отношение это имеет к вашему дизайну базы данных? – Yuck

ответ

1

Очень простое решение было бы присвоить двоичное значение для вашего флажки. Так что вместо 1,2,3 вы могли бы использовать 1,2,4. Затем вы суммируете значения выбранных полей и сохраняете это уникальное значение.

Как и в вашем коде:

 
    `input type="checkbox" name="id5" value="1" (...)` 
    `input type="checkbox" name="id6" value="2" (...)` 
    `input type="checkbox" name="id7" value="4" (...)` 

Таблица истинности ниже показывает вам различные значения.

 
id:   ID5 ID6 ID7 Sum 
value:  1  2 4 
      x     1 
        x   2 
      x  x   3 
         x  4 
      x   x  5 
        x x  6 

Раствор не SQL связаны между собой, но, откровенно говоря, ни вопрос ... Удачи!

+0

Да, хорошая идея, но это как можно реализовать на jsp-коде? – JHk1821

+0

У меня есть обновленный ответ для ясности ... –

Смежные вопросы