Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > AJAX
AJAX Forum sur la programmation AJAX. Avant de poster : Cours AJAX, FAQ AJAX, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/01/2008, 21h48   #1
Nouveau Membre du Club
 
Inscription : juin 2006
Messages : 218
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 218
Points : 39
Points : 39
Par défaut Authentification en Ajax

Salut tout le monde,

Je n'arrive pas a trouver l'erreur mais apres avoir teste mon code, elle se trouve dans la boucle for.

Ce code me permet de verifier si le username et le password sont corrects. Ceux ci se trouve dans un fichier xml. Donc je compare les inputs avec les nodes du fichier xml => authentification.


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<html>
<head>
<script type='text/javascript'>
function isEmpty(){
 
  	var xmlHttp;
	if(window.XMLHttpRequest){ 
		var xmlHttp = new XMLHttpRequest();
 
	}
	else if(window.ActiveXObject){ 
		var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
 
 
	var strURL="suppliers.xml";
	xmlHttp.open('POST', strURL, true);
	xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlHttp.onreadystatechange=processRequest;
	xmlHttp.send(null);
 
	function processRequest(){
 
	if(xmlHttp.readyState==4 && xmlHttp.status==200){
 
      response     = xmlHttp.responseXML.documentElement;
      }
      }
 
 
      var suppliers=response.getElementsByTagName("supplier");
 
      count=suppliers.length;
 
      user = document.form.username.value;
	  pass = document.form.password.value;
 
      for(int i=0;i<count;i++){      
 
      var username=suppliers[i].getElementsByTagName("username")[0].firstChild.nodeValue;
      var password=suppliers[i].getElementsByTagName("password")[0].firstChild.nodeValue;	
 
	  if(username==user && password==pass){
	  	var validationMessage=document.getElementById("validationMessage");
		validationMessage.innerHTML = "Username and password right";
 
	  }
	  else
	  {
	  	var validationMessage=document.getElementById("validationMessage");
		validationMessage.innerHTML = "incorrect username and password";
		document.getElementById("submitForm").disabled = false;	  
	  }
	  }
 
}
</script>
 
</head>
<body>
 
<form action="" method="post" name="form">
 
	<fieldset>
	<legend>Member Log In</legend>
		<p>
           <label for="login_username">Username</label>
           <input id="username" name="username" type="text"/>
 
        </p>
        <p>
           <label for="login_password">Password</label>
           <input id="password" name="password" type="password" />
       </p>
       <p>
           <label for="login_type">Type</label><br>
           <input type="radio" name="type" value="client">Client<br>
           <input type="radio" name="type" value="provider" checked>Provider<br>
       </p>
       <input type="text" id="validationMessage"/>
           <input type="button" id="submitForm" onclick="isEmpty()" value="Log In" />
    </fieldset> 
 
</form>
</body>
</html>
fichier xml:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
  <?xml version="1.0" encoding="utf-8" ?> 
- <suppliers>
- <supplier id="1010">
  <username>apex</username> 
  <password>apex</password> 
  <name>Apex Cables Limited</name> 
  <address>St john's Road, Meadowfield Industrial Estate, Durham City, England</address> 
  <phone>+44 (0)191 378 7900</phone> 
  </supplier>
 
<supplier>........</supplier>
Identifiant est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2008, 14h02   #2
Membre habitué
 
Inscription : septembre 2007
Messages : 169
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 169
Points : 116
Points : 116
ca serait mieux si tu nous disais ou exactement, mets un alert à chaque ligne s'il faut, comme ca tu verras le dernier alert lancé

Le mieux est quand même firebug si tu l'as pas encore.
__________________
Cartes Pokémon, Yugioh, Magic ?
Communauté d'échange
kangaxx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2008, 10h28   #3
Nouveau Membre du Club
 
Inscription : juin 2006
Messages : 218
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 218
Points : 39
Points : 39
Merci pour votre aide. J'ai utilise alert et l'erreur se trouve a l'interieur de la boucle for.

Je me demande si je peux effectuer une authentication a partir d'une base de donnees Access au lieu d'un fichier XML?

Je n'en trouve pas un tel code. Merci d'avances.
Identifiant est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2008, 11h08   #4
Membre confirmé
 
Inscription : décembre 2005
Messages : 265
Détails du profil
Informations personnelles :
Âge : 24

Informations forums :
Inscription : décembre 2005
Messages : 265
Points : 232
Points : 232
Avec un tel système tu donnes à qui veut les identifiants et mots de passe de tout le monde...

Déjà un système d'authentification en javascript ne vaut rien, n'importe quel navigateur peut désactiver le javascript et donc passer outre cette protection.

Ensuite en regardant simplement le code source de ta page on voit le fichier xml où sont stockées les informations...

Si tu veux un vrai système d'authentification passe par un langage serveur ou par le système d'Apache si c'est ton serveur (IIS je connais pas).
Palca est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2008, 12h30   #5
Nouveau Membre du Club
 
Inscription : juin 2006
Messages : 218
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 218
Points : 39
Points : 39
je suis en train d'utiliser AJAX avec le langage serveur JSP mais je n'arrive pas a trouver comme ecrire un code de Login/Authentification + Base de donnees et non un fichier XML.
Identifiant est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2008, 16h57   #6
Membre éprouvé
 
Avatar de d-Rek
 
Développeur Web
Inscription : janvier 2007
Messages : 438
Détails du profil
Informations personnelles :
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : janvier 2007
Messages : 438
Points : 400
Points : 400
Bah déjà, installe une base de donnée.
Malheureusement, JSP qui est plus rapide que l'ASP ou le PHP est beaucoup moins utilisé/répendu que ces 2 derniers. Du coup, je crains que tu ne trouves pas/peu de ressources style script prêt à surfer.
__________________
Mon blog
d-Rek est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h51.


 
 
 
 
Partenaires

Hébergement Web