2014-10-23 7 views
0

У меня есть простой код корзины покупок, который добавляет продукты из раскрывающегося списка игр на странице html. Я редактировал html-страницу, удалял раскрывающийся список и добавлял кнопку «добавить в корзину» для каждой игры. Поэтому я пытался отредактировать корзину, чтобы добавлять игры, когда нажимают кнопку «добавить в корзину», но не могут. Обратите внимание, что я использую сервлеты jetty-9 для кода на стороне сервера.Корзина с помощью сервлета

Пожалуйста, помогите мне !!!

Вот оригинальная корзина код, который работал с выпадающим списком:

import java.io.*; 
import javax.servlet.*; 
import javax.servlet.http.*; 
public class Cart extends HttpServlet { 
    public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException,IOException { 
     String s, goods[] = {"Fifa 15", "Battlefield 5", "GTA 6"}; 
     double price []={10,20,30}; 
     double cost; 
     PrintWriter out = res.getWriter(); 
     res.setContentType("text/html"); 
     HttpSession session = req.getSession(true); 

     if (session == null) return; 
     for (int i = 0; i < goods.length; i++) 
     if (session.getAttribute(goods[i]) == null) 
      session.setAttribute(goods[i], new Integer(0)); 

     if ((s = req.getParameter("buy")) != null) { 
      int n = ((Integer)session.getAttribute(s)).intValue(); 
      session.setAttribute(s, new Integer(n + 1)); 
     } 
     out.println("<html><body><h2>Shopping Cart</h2><ul>"); 
     for (int i = 0; i < goods.length; i++) { 
      int n = ((Integer)session.getAttribute(goods[i])).intValue(); 
      if (n > 0){ 
       out.println("<li><b>" + goods[i] + "</b> : " + n +":"+ price[i] +"</li>"); 
       cost=n*price[i]; 
       out.println(cost);} 
      } 
     out.println("</ul></body></html>"); 
    } 
} 

Hers является HTML-игр:

<html> 
Games 
<head> 
</head> 
<body> 
    <form action="http://localhost:8080/apps/Cart"method="post" > 

     Fifa 15 </br> 
     <img src="images/fifa-15.jpg" width = 200 height = 300 alt="image" /></br> 
     <input type="submit" value="add to cart" ></br> 

     Battlefield 4</br> 
     <img src="images/battlefield-4.jpg" width = 200 height = 300 alt="image" /></br> 
     <input type="submit" value="add to cart" name ="battle"></br> 

     GTA 5</br> 
     <img src="images/gta-5.jpg" width = 200 height = 300 alt="image" /></br> 
     <input type="submit" value="add to cart" name = "gta"> 
    </form> 
</body> 
</html> 

ответ

0

Наконец ваш код должен быть таким:

HttpSession session = req.getSession(true); 

    for (int i = 0; i < goods.length; i++) { 
     if (session.getAttribute(goods[i]) == null) 
      session.setAttribute(goods[i], new Integer(0)); 
    } 

    if ((s = req.getParameter("fifa")) != null) { 
     int n = ((Integer) session.getAttribute(goods[0])).intValue(); 
     session.setAttribute(goods[0], new Integer(n + 1)); 
    } else if ((s = req.getParameter("battle")) != null) { 
     int n = ((Integer) session.getAttribute(goods[1])).intValue(); 
     session.setAttribute(goods[1], new Integer(n + 1)); 
    } else if ((s = req.getParameter("gta")) != null) { 
     int n = ((Integer) session.getAttribute(goods[2])).intValue(); 
     session.setAttribute(goods[2], new Integer(n + 1)); 
    } 

И html страница:

Fifa 15 </br> 
    <img src="images/fifa-15.jpg" width = 200 height = 300 alt="image" /></br> 
    <input type="submit" value="add to cart" name = "fifa"></br> 

    Battlefield 4</br> 
    <img src="images/battlefield-4.jpg" width = 200 height = 300 alt="image" /></br> 
    <input type="submit" value="add to cart" name ="battle"></br> 

    GTA 5</br> 
    <img src="images/gta-5.jpg" width = 200 height = 300 alt="image" /></br> 
    <input type="submit" value="add to cart" name = "gta"> 

После обнаружения нажатия кнопки вы можете выбрать действие для каждой кнопки.

+0

не работает? можете ли вы рассказать, что такое код? – Reda93

+0

все еще не работает, код, который вы заменяете на system.out.println ('fifa'), первоначально использовался для добавления элемента из выпадающего списка в корзину. но выпадающего списка больше нет. – Reda93

+0

Я добавил id = fifa вместо name = fifa, но получил ошибку. – Reda93

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