- Home
- Categorie
- Coding e Sistemistica
- Javascript & Framework
- [Javascript - Jquery] Link funzionante se inserisco la password
-
[Javascript - Jquery] Link funzionante se inserisco la password
Salve a tutti,
vorrei creare un'area riservata fasulla, ovvero una semplice pagina ma che l'unico modo per accedevi
sia tramite un form che chiede nome utente e password (***univoca ***per tutti) oppure conoscendo il link ovviamente.Non potendo farla in php (il sito fatto in asp), vorrei chiedervi come poterla fare in js.
Volevo dunque creare dua variabili:
var user;
var psw;e creare una funzione in modo tale che quando premo la button mi faccia partire la funzione che controlla se l'user e la psw siano giusti, altrimenti
fa uscire un alert.Grazie dell'aiuto
-
Esclusivamente in JS è farlocca sul serio... perché non posti in area ASP e ti aiutiamo a farla con un controllo ASP?
Probabilmente in questo Forum troverai il 20% dei miei post con questa frase dentro: "il javascript E' il browser". Che non va presa letteralmente, sta a significare che tutto ciò che è Javascript è manipolabile dall'utente che visualizza la pagina, eludere il controllo è un attimo.Chiaro, se mi dici che gli utilizzatori di quel form fanno tutti parte di quella categoria di persone che a malapena accendono il PC, o che nonostante ciò che ti ho detto vuoi farla comunque solo col JS, cerco di postarti uno snippet di codice... "credibile"...
-
Non vorrei farlo in Asp non lo conosco proprio ho iniziato da poco ed uso solo il php !
Comunque sia ho optato per questa soluzione solo per risolvere la questione nel piu breve tempo possibile.
il target é la gente "comune" quindi va più che bene una cosa fasulla come questa
-
Toh...
[html]
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript" src="jquery.md5.min.js"></script>
<title>Login</title>
</head>
<body>
<div id="box_password" style="text-align: center">
<h3>Accedi all'area riservata</h3>
<br/>
<input type="password" name="input_password" id="input_password">
<br><br>
<button id="accedi">Accedi</button>
</div>
<div style="clear: both"></div>
<div id="box_nascosto" style="display: none"></div>
<script type="text/javascript">
$(document).ready(function() {
$("#accedi").click(function() {
var password = "e10adc3949ba59abbe56e057f20f883e";
var nome_file = "secret";
var input_password = $("#input_password").val();
if (input_password.length == 0) {
alert("Inserisci la password");
}
else {
if ($.md5(input_password) != password) {
alert("Password sbagliata");
}
else {
$("#box_password").fadeOut(500);
$("#box_nascosto").load($.md5(nome_file + ".html"));
$("#box_nascosto").fadeIn(500);
}
}
});
});
</script>
</body>
</html>
[/html]Dovrebbe andare bene. Per deformazione professionale non sono riuscito a farlo senza un minimo (ma proprio un minimo) di sicurezza. Te lo spiego brevemente:
- oltre al jQuery, che ho linkato tramite google hosted libraries, ti serve jQuery MD5 Plugin, che trovi qui -> raw.github.com/gabrieleromanato/jQuery-MD5/master/jquery.md5.min.js;
- la variabile "password" contiene la password criptata. Per sapere qual è l'equivalente criptato della password che scegli, vai qui -> md5crypt.com/index.php , inserisci la password che vuoi inserire e fai copia incolla del risultato MD5 Encryption nella variabile "password" . La password che gli ho impostato io è 123456;
- La variabile nome_file contiene il percorso o il nome del file che contiene l'HTML che vuoi caricare. Il nome del file sul server che contiene l'HTML "nascosto" deve essere l'equivalente MD5 di quello che c'è in nome_file, puoi utilizzare lo stesso sito della password per calcolare il nome del file;
- Visualizza messaggio di errore se la password è sbagliata o non è stata inserita;
- fadeOut serve a far sparire il box di login, fadeIn a far comparire il contenuto nascosto.
Esempio:
supponi che scegli la password 123456
password sarà uguale e10adc3949ba59abbe56e057f20f883e
supponi che al file HTML che contiene il contenuto segreto starebbe bene il nome di "secret.html"
nome_file sarà uguale a "secret"
il nome del file presente sul server sarà 5ebe2294ecd0e0f08eab7690d2a6ee69.htmlIl giochetto dell'MD5 dovrebbe lasciare fuori dal contenuto nascosto la categoria degli incapaci, ma sappi che anche uno una spanna sopra può eludere il controllo. Ovviamente, nell'ipotesi che qualcun altro voglia realmente utilizzarlo come box di login per altre cose, il sorgente che ho postato sopra è liberamente copiabile/utilizzabile da chiunque.
EDIT: ovviamente il file .html può essere anche un .asp, ed ammesso che tu linki direttamente tuosito.it/5ebe2294ecd0e0f08eab7690d2a6ee69.asp, il file è liberamente accessibile.
-
Ok Grazie Mille! Funziona alla grande, era proprio quello che volevo...
Ma visto che ormai siamo in tema, vorrei continuare a sfruttare la tua esperienza ( Scherzo ovviamente
Se volessi a questo punto utilizzare delle password salvate in un database?! Come posso farlo?!
Grazie!
-
La risposta a questa domanda è: NI.
Nel senso che se avessi a che fare con un veterano, ti direi che il Javascript potrebbe girare server-side con qualcosa di più avanzato come node.js.
Ti serve una cosa facile, e quindi ti serve ASP o PHP... con una chiamata AJAX devi chiamare uno script che ha la possibilità tecnica di connettersi ad un database in maniera semplice.