Как отобразить поле ввода в JSP в зависимости от оператора IF? - PullRequest
1 голос
/ 29 марта 2020

Мне нужно сделать форму, которая вычисляет площадь и периметр треугольника, спрашивая его основание и высоту, но это уже сделано, меня беспокоит то, что мне нужно сохранить имя пользователя в сеансе, но сначала я нужно запросить его, и в следующий раз просто отобразится текст приветствия с именем пользователя.

Это мой код

<!DOCTYPE html>
<!--
To change this license header, choose License Headers in Project Properties.
To change this template file, choose Tools | Templates
and open the template in the editor.
-->
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="controller.muestraarea"%>
<%@page import="controller.muestraper"%>
<%@page import="java.util.Enumeration"%>

<html>
    <head>
        <!-- Required meta tags -->
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
        <!-- Bootstrap CSS -->
        <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet">
    </head>

    <body class="bg-light" data-gr-c-s-loaded="true">
        <div class="container">
            <div class="py-5 text-center">
                <h2>Actividad 3 - Área y perí­metro de un triángulo equilátero</h2>
                <br>
            </div>
            <form class="form-horizontal" action="resultado.jsp" method="POST">
                <div class="row">
                    <div class="col">
                        <div class="text-center">
                            <h5>Base:</h5>
                        </div>
                        <input type="text" class="form-control" name="num1" value="" required>
                    </div>
                    <div class="col">
                        <div class="text-center">
                            <h5>Altura:</h5>
                        </div>
                        <input type="text" class="form-control" name="num2" value="" required>
                    </div>
                </div>
                <div class="row">
                    <div class="col">
                        <div class="py-5 text-center">
                            <h5>Área: </h5>
                            <p>?</p>
                        </div>
                    </div>
                    <div class="col">
                        <div class="py-5 text-center">
                            <h5>Perí­metro: </h5>
                            <p>?</p>
                        </div>
                    </div>
                </div>
                <div class="row">
                    <div class="col">
                        <div class="py-5 text-center">
                            <input type="submit" class="btn btn-success" value="Obtener Área y perí­metro">
                        </div>
                    </div>
                </div>
            </form>
            <%
                HttpSession sesion = request.getSession(false);
                Enumeration e = sesion.getAttributeNames();
                if (e.hasMoreElements()) {
                    out.println("Bienvenido de vuelta " + sesion.getAttribute("nombre") + "\n");
                } else {
                    out.print("Introduzca su nombre : ");
                }
            %>
            <%
                Cookie ck[] = request.getCookies();
                if (ck != null) {
                    for (int i = 0; i < ck.length; i++) {
                        if (ck[i].getName().equals("base")) {
                            out.print("\n\nTu base anterior fue de : " + ck[i].getValue());
                        }
                        if (ck[i].getName().equals("altura")) {
                            out.print("\nTu altura anterior fue de : " + ck[i].getValue());
                        }
                        if (ck[i].getName().equals("area")) {
                            out.print("\nTu área anterior fue de : " + ck[i].getValue());
                        }
                        if (ck[i].getName().equals("perimetro")) {
                            out.print("\nTu perímetro anterior fue de : " + ck[i].getValue());
                        }
                    }
                }
            %>
            <!-- Java Scripts -->
            <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/js/bootstrap.min.js"></script>
            <!-- End -->
        </div>
    </body>
</html>

В else заявлении - это то место, куда я хочу поместить поле ввода, если нет сеанса с сохраненным именем, но если оно сохранено, я хочу показать приветствие с именем пользователя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...