Script mot de passe sur la page index [Résolu]

Messages postés
15
Date d'inscription
samedi 25 février 2006
Statut
Membre
Dernière intervention
28 décembre 2008
- - Dernière réponse : hvb
Messages postés
961
Date d'inscription
vendredi 25 octobre 2002
Statut
Membre
Dernière intervention
27 janvier 2009
- 12 févr. 2007 à 00:45
Bonjour,

J'utilise actuellement le script ci-dessous qui à pour vocation de filtrer certaines pages html via un code utilisateur et un mode de passe. Tout fonctionne très bien, sauf que le script appelle une page html au sein du même répertoire que la page qui contient le script.

J'aimerai simplement savoir comment atteindre une page html si celle-ci est dans un autre répertoire... Je pense que tout ce passe ici :   if (sum==checksum) {window.location=login+".html"; ok=1; no=100;} mais je ne maitrise pas suffisament la programmation et je ne sais pas ou placer mon répertoire "html" suivi de login+"html" ???...

Si vous avez 5 minutes, c'est sympa...
@+

-----------

<script language="JavaScript" type="text/javascript">
// D'autres scripts sur http://www.toutjavascript.com
// Si vous utilisez ce script, vous devez laisser ce commentaire


var total_erreur=0;


function Check() {
 var tabc=Check.arguments; var ok=0;
 var tab="                   azertyuiopqsdfghjklmwxcvbnAZERTYUIOPQSDFGHJKLMWXCVBN0123456789_$&#@";
 for (var no=0;no<tabc.length;no++) {
  checksum=tabc[no];
  // table des caracters autorises
  var login=document.forms["accesdirect"].elements["login"].value;
  var password=document.forms["accesdirect"].elements["password"].value;
  var nblog=login.length;
  var nbpass=password.length;
  var sum=1;
  var n=Math.max(nblog,nbpass)
  for (var i=0;i<n;i++) {
   var index1=tab.indexOf(login.substring(i,i+1))+10;
   var index2=tab.indexOf(password.substring(i,i+1))+10;
   sum=sum+(index1*n*(i+1))*(index2*(i+1)*(i+1));
  }
  
  // calcul de la checksum. La fonction est modifiable !
  if (sum==checksum) {window.location=login+".html"; ok=1; no=100;}
  // test de la checksum
 }
 if (ok==0) {
  total_erreur++;
   if (total_erreur>0) {
   window.location="index.html"; }
 }


}
function Verifie() {
 Check(4166633)
}
</script>
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
961
Date d'inscription
vendredi 25 octobre 2002
Statut
Membre
Dernière intervention
27 janvier 2009
1
3
Merci
ben... remplace
window.location=login+".html";
par
window.location="tonrepertoire/"+login+".html";

cependant, ta methode n'est pas très secure, et est contournable vraiment facilement...

Hvb aka Batto
bato.ltd at gmail.com

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 121 internautes nous ont dit merci ce mois-ci

Commenter la réponse de hvb
Messages postés
15
Date d'inscription
samedi 25 février 2006
Statut
Membre
Dernière intervention
28 décembre 2008
0
Merci
Merci beaucoup de ton aide... cela fonctionne parfaitement !

Sinon, j'ai effectivement déjà lu que ce script n'est pas blindé... Aussi, existe t-il un autre script ou une méthode assez simple via html ou php qui soit plus "secure" ?

@+
Commenter la réponse de webmcmaster
Messages postés
961
Date d'inscription
vendredi 25 octobre 2002
Statut
Membre
Dernière intervention
27 janvier 2009
1
0
Merci
javascript étant exécuté coté client, et le code etant accessible en lecture, aucune methode ne peut être non-contournable.
Php par contre, serait effectivement le moyen le plus simple pour mettre en oeuvre ce que tu cherche à faire.
En passant par un formulaire comme tu le fais, mais avec une verification "coté php" donc serveur, dans lequel tu pourrais comparer le couple login-pass avec celui enregistré dans un fichier ou dans une table d'une base sql...
Sinon tu peux passer par une authentification http (htaccess) puis coté php, traiter la page de reponse à renvoyer selon le login (qui aura déja été validé par le htaccess)
Il y a beaucoup de doc à ce sujet sur le net ^^

Hvb aka Batto
bato.ltd at gmail.com
Commenter la réponse de hvb