3E e 3I SIA: Il login solo con Html, Css e Javascript


Questo esercizio è semplicemente un esempio didattico.
La procedura consente di inserire le credenziali e con una funzione in javascript viene effettuato il controllo su username e password, i tentativi son 3, nel caso le credenziali sono state inserite, appare un alert con il messaggio "Login effettuato correttamente" e appare la pagina dell'area riservata altrimenti ti informa che hai ancora n tentativi rimasti.

Ovviamente è solo un piccolo esempio senza sessioni, senza php, senza crittografia e senza database.

Per chi avesse ancora problemi ad aprire i file dell'esercizio sul login ecco il contenuto:


pagina html: javascript_login.html


<html>

<head>

<title>Javascript Login Form Validation</title>

<!-- Include CSS File Here -->

<link rel="stylesheet" href="css/style.css"/>

<!-- Include JS File Here -->

<script src="js/login.js"></script>

</head>

<body>

<div class="container">

<div class="main">

<h2>Javascript Login con Validazione  del form e max tre tentativi</h2>

<form id="form_id" method="post" name="myform">

<label>User Name :</label>

<input type="text" name="username" id="username"/>

<label>Password :</label>

<input type="password" name="password" id="password"/>

<input type="button" value="Login" id="submit" onclick="validate()"/>

</form>

<span><b class="note">Note : </b>Per questo esempio dovete inserire username and password. <br/><b class="valid">User Name : Laboratorio<br/>Password : PaoloLatella</b></span>

</div>

</div>

</body>

</html>


Pagina CSS: style.css


/* Below line is used for online Google font */

@import url(http://fonts.googleapis.com/css?family=Raleway);

h2{

background-color: #FEFFED;

padding: 30px 35px;

margin: -10px -50px;

text-align:center;

border-radius: 10px 10px 0 0;

}

hr{

margin: 10px -50px;

border: 0;

border-top: 1px solid #ccc;

margin-bottom: 40px;

}

div.container{

width: 900px;

height: 610px;

margin:35px auto;

font-family: 'Raleway', sans-serif;

}

div.main{

width: 300px;

padding: 10px 50px 25px;

border: 2px solid gray;

border-radius: 10px;

font-family: raleway;

float:left;

margin-top:50px;

}

input[type=text],input[type=password]{

width: 100%;

height: 40px;

padding: 5px;

margin-bottom: 25px;

margin-top: 5px;

border: 2px solid #ccc;

color: #4f4f4f;

font-size: 16px;

border-radius: 5px;

}

label{

color: #464646;

text-shadow: 0 1px 0 #fff;

font-size: 14px;

font-weight: bold;

}

center{

font-size:32px;

}

.note{

color:red;

}

.valid{

color:green;

}

.back{

text-decoration: none;

border: 1px solid rgb(0, 143, 255);

background-color: rgb(0, 214, 255);

padding: 3px 20px;

border-radius: 2px;

color: black;

}

input[type=button]{

font-size: 16px;

background: linear-gradient(#ffbc00 5%, #ffdd7f 100%);

border: 1px solid #e5a900;

color: #4E4D4B;

font-weight: bold;

cursor: pointer;

width: 100%;

border-radius: 5px;

padding: 10px 0;

outline:none;

}

input[type=button]:hover{

background: linear-gradient(#ffdd7f 5%, #ffbc00 100%);

}


Pagina Js: login.js


var attempt = 3; // Variabile inizializzata a tre che sono i tre tentativi.

// Funzione di validazione del login.

function validate(){

var username = document.getElementById("username").value;

var password = document.getElementById("password").value;

if ( username == "Laboratorio" && password == "PaoloLatella"){

alert ("Login effettuato correttamente");

window.location = "menu.html"; // Reindirizza il browser in un'altra pagina

return false;

}

else{

attempt --;// Decremento di uno.

alert("Hai ancora "+attempt+" tentativi ");

// Disabling fields after 3 attempts.

if( attempt == 0){

document.getElementById("username").disabled = true;

document.getElementById("password").disabled = true;

document.getElementById("submit").disabled = true;

return false;

}

}

}


pagina Html: menu.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">


<head>

<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />

<title>Area riservata</title>

<style type="text/css">

.auto-style1 {

text-align: center;

font-family: Cambria, Cochin, Georgia, Times, "Times New Roman", serif;

font-size: xx-large;

}

.auto-style2 {

text-align: center;

}

</style>

</head>


<body>


<div class="auto-style1">


<strong>Benvenuti nell'area riservata

</strong></div>

<p class="auto-style2">

<img alt="" height="281" src="img/work_in_progress.png" width="559" /></p>

<p class="auto-style2">

<img alt="" height="328" src="img/193-1931390_sito-in-costruzione-png-transparent-png.png" width="840" /></p>

</body>

</html>

cliccando qui  è possibile scaricare l'intero esempio funzionante:

Se lo scaricamento non avviene copiare l'indirizzo del link in un'altra scheda e confermare.

Commenti

Post popolari in questo blog

Simulazioni di reti (con Cisco Packet Tracer)

Esercizi sulla rappresentazione della virgola mobile IEEE 754 (Floating Point)