Problème login ajax/php

Fermé
pierro6992 - 5 janv. 2010 à 11:56
Atropa Messages postés 1940 Date d'inscription mercredi 25 juin 2008 Statut Membre Dernière intervention 11 mai 2014 - 5 janv. 2010 à 13:20
Bonjour,

Voici mon problème, je veux faire un script de login en ajax. Tout marche nikel, l'email et le mot de passe sont bien testés mais par contre je ne comprends pas pourquoi la réponse est mal interprétée par le javascript.
Je vous copie colle les bouts de scripts :

// FICHIER INDEX.PHP

<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>LOGIN</title>
<script language="javascript">
function afficherloginbox(){
document.getElementById("loginbox").style.display = "inline";
document.getElementById("compte").style.display = "none";
}
function affichercompte(){
document.getElementById("loginbox").style.display = "none";
document.getElementById("compte").style.display = "inline";
}
</script>
</head>
<body>
<!-- Include AJAX Framework -->
<script src="ajax/ajax_framework.js" language="javascript"></script>

<div id="login_response"></div>

<!-- Form: the action="javascript:login()"call the javascript function "login" into ajax_framework.js -->
<div id="loginbox">
<form action="javascript:login()" method="post">
<input name="emailLogin" type="text" id="emailLogin" value=""/>
<input name="pswLogin" type="password" id="pswLogin" value=""/>
<input type="submit" name="Submit" value="Login"/>
</form>
</div>
<div id="compte">
</div>
</body>
</html>

// LE FICHIER AJAX_FRAMEWORK...
/* ---------------------------- */
/* XMLHTTPRequest Enable */
/* ---------------------------- */
function createObject() {
var request_type;
var browser = navigator.appName;
if(browser == "Microsoft Internet Explorer"){
request_type = new ActiveXObject("Microsoft.XMLHTTP");
}else{
request_type = new XMLHttpRequest();
}
return request_type;
}

var http = createObject();

function loginReply() {
if(http.readyState == 4){
var response = http.responseText;
if(response == 0){
// if login fails
document.getElementById('login_response').innerHTML = 'Login failed! Verify user and password';
// else if login is ok show a message: "Welcome + the user name".
} else {
document.getElementById('loginbox').innerHTML = 'Welcome'+response;
}

// C'est donc ici que la condition ne marche pas. Dans tous les cas, 0 ou 1, le script renvoie 'Welcome 0' ou 'Welcome 1'. HELP !! Smiley
}
}
/* -------------------------- */
/* LOGIN */
/* -------------------------- */
/* Required: var nocache is a random number to add to request. This value solve an Internet Explorer cache issue */
var nocache = 0;
function login() {
// Optional: Show a waiting message in the layer with ID ajax_response
document.getElementById('login_response').innerHTML = "Loading..."
// Required: verify that all fileds is not empty. Use encodeURI() to solve some issues about character encoding.
var email = encodeURI(document.getElementById('emailLogin').value);
var psw = encodeURI(document.getElementById('pswLogin').value);
// Set te random number to add to URL request
nocache = Math.random();
// Pass the login variables like URL variable
http.open('get', 'login.php?email='+email+'&psw='+psw+'&nocache = '+nocache, true);
http.onreadystatechange = loginReply;
http.send(null);
}

// FICHIER LOGIN.PHP

<!-- Include Database connections info. -->
<?php
session_start();
include('config.php'); ?>

<!-- Verify if user exists for login -->
<?php
if(isset($_GET['email']) && isset($_GET['psw'])){

$email = $_GET['email'];
$psw = md5($_GET['psw']);

$getUser_sql = 'SELECT * FROM membres WHERE email="'. $email . '" AND mdp = "' . $psw . '"';
$getUser = mysql_query($getUser_sql);
$getUser_result = mysql_fetch_assoc($getUser);
$getUser_RecordCount = mysql_num_rows($getUser);

if($getUser_RecordCount < 1){ $_SESSION['login'] = NULL; echo '0'; } else {
$_SESSION['login'] = $getUser_result['email'];
echo '1';}
}

?>


Merci d'avance pour vos réponses !

1 réponse

Atropa Messages postés 1940 Date d'inscription mercredi 25 juin 2008 Statut Membre Dernière intervention 11 mai 2014 274
5 janv. 2010 à 13:20
les commentaires html de ta page sont affiché !

alors forcément ca ne vaut pas 0 mais <!-- blabla --> 0 ou <!-- blabla --> 1
0