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 26/12/2011, 22h23   #1
 
Homme vincent
Apprenti php
Inscription : juillet 2011
Messages : 21
Détails du profil
Informations personnelles :
Nom : Homme vincent
Localisation : France

Informations professionnelles :
Activité : Apprenti php

Informations forums :
Inscription : juillet 2011
Messages : 21
Points : -1
Points : -1
Par défaut Problème AJAX (formulaire dynamique)

Bonsoir , j'ai encore un problème avec AJAX que j'arrive pas a résoudre.

Enfet je veux vérifier dans mon formulaire dynamique , si le pseudo n'est déja pas contenue dans la BDD.

Regardez la fonction de vérification du pseudo:

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
check['login'] = function() {
 
    var login = document.getElementById('login'),
        tooltipStyle = getTooltip(login).style;
 
    var retour = true;
 
 
 
    if (login.value.length >= 4) {
        login.className = 'correct';
        tooltipStyle.display = 'none';
 
 
  var xhr = new XMLHttpRequest();
  xhr.open('GET', 'http://poliboolold.fr/membres/ajax_pseudo.php?pseudo='+login.value , false);
  xhr.send(null);
 
 
 
  xhr.onreadystatechange = function() {
 
 alert("you");
    if(xhr.readyState == 4) {
 
    if (xhr.responseText.length != 7) {
 
    login.className = 'correct';
    tooltipStyle.display = 'none';
 
  } else {
 
    login.className = 'incorrect';
    document.getElementById('login1').innerHTML = 'Le pseudo est déja pris.';
    tooltipStyle.display = 'inline-block';
    retour = false;
  }
}
}
 
 
    }
 else {
        login.className = 'incorrect';
        document.getElementById('login1').innerHTML='Le pseudo doit faire au moins 4 caractères';
	tooltipStyle.display = 'inline-block';
        retour = false;
    }
 
return retour;
};
Et la page ajax_pseudo.php:

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
<?php
 
try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
   			 $bdd = new PDO('mysql:host=;dbname=', '', '', $pdo_options);
 
		$req= $bdd->prepare('SELECT id FROM membres WHERE pseudo=:pseudo');
		$req->execute(array('pseudo'=> $_GET['pseudo']));
		$resultat= $req->fetch();
 
if($resultat)
{
echo utf8_decode("warning");
}
else
{
echo utf8_decode("gut");
}
 
}
 
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
 
?>
Et maintenant testez le formulaire ici . Mettez "poliboolold" comme pseudo , cliquez sur "m'inscrire " et vous verrez que le message d'erreur ne s'affiche pas.

S'il vous plait , aidez moi , cela fait 1 semaine que j'y comprend rien.Comment y remedier?

Merci
kikou732 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 18h52.


 
 
 
 
Partenaires

Hébergement Web