[AJAX] controle mot de passe
Bonjour
je cherche à faire un contrôle de mot de passe avec ajax et php.
la saisie et le contrôle se passent bien, mais je souhaite que lorsque le mot de passe est correct aller sur une autre page
Voici mon formulaire
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
|
<form id='log' method='post' action='javascript:ajax();'>
<input type=hidden name=idGroupe id=idGroupe value=<?php echo $groupe_data['idGroupe']; ?>>
<table align='center'>
<tr>
<td>
<div id=messageErreur>
<br>
</div>
</td>
</tr>
<tr>
<td>
Mot de passe
<input type='password' name='passwd' id="passwd" />
</td>
</tr>
<tr>
<td>
<input type='submit' value='Entrez' />
</td>
</tr>
</table>
</form> |
la fonction ajax
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
function ajax() {
getXhr();
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && xhr.status == 200) {
document.getElementById('messageErreur').innerHTML = xhr.responseText;
}
}
xhr.open("POST", 'includes/controles/controle_mot_de_passe.php', true);
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xhr.send("passwd=" + document.getElementById("passwd").value +
"&idGroupe=" + document.getElementById("idGroupe").value);
} |
et le script php du controle
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| <?php
$passwd = $_POST['passwd'];
$idGroupe = $_POST['idGroupe'];
if ($passwd!="") {
$profil_data = get_profilByPassword($idGroupe, $passwd);
if ($profil_data==null) {
echo "Mot de passe invalide <br> Incorrect password";
} else {
// ========= c'est ici que je souhaite ouvrir une page =======
echo "password ok";
}
} else {
echo "Mot de passe non saisi <br> Blank password";
}
?> |
est ce que je m'y prends bien ? est ce la bonne solution ?
merci de votre aide