Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Ajax] Problème XMLHttpRequest

Erreur incompréhensible...

    11 juin 2009 à 21:25:28

    Hey',

    Je suis entrain de créer un formulaire de connexion. J'aimerais utiliser XMLHttpRequest pour transmettre les valeurs.
    Seulement voilà, j'ai un problème.

    Lorsque je clique sur mon boutton, XMLHttpRequest doit appeler une page php(voir code plus bas).
    Hors, lorsque je clique sur mon bouton, rien ne se passe, et ma fonction ne récupère pas de texte.

    J'ai essayé de reprendre le code exact du tutoriel, de le mettre dans un autre fichier et d'essayer, là, tout marche à merveille.
    Seulement, quand je recopie le même code dans ma page index.html, je reçoit un alert vide.

    Voici le code de la page index.html

    <!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" />
    <link media="screen/projection" rel="stylesheet" type="text/css" href="css/global.css" />
    <title>SimpleLogin | Login</title>
    <script type="text/javascript">
    <!-- 
    
    function getXMLHttpRequest() {
    	var xhr = null;
    	
    	if (window.XMLHttpRequest || window.ActiveXObject) {
    		if (window.ActiveXObject) {
    			try {
    				xhr = new ActiveXObject("Msxml2.XMLHTTP");
    			} catch(e) {
    				xhr = new ActiveXObject("Microsoft.XMLHTTP");
    			}
    		} else {
    			xhr = new XMLHttpRequest(); 
    		}
    	} else {
    		alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest...");
    		return null;
    	}
    	
    	return xhr;
    }
    function request(callback) {
    	var xhr = getXMLHttpRequest();
    	
    	xhr.onreadystatechange = function() {
    		if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) {
    			callback(xhr.responseText);
    		}
    	};
    	
    	var id = encodeURIComponent(document.getElementById("id").value);
    	var pass = encodeURIComponent(document.getElementById("password").value);
    	
    	xhr.open("GET", "XMLHttpRequest_getString.php?id=" + id + "&pass=" + pass, true);
    	xhr.send(null);
    }
    
    function readData(data) {
    	alert(data);
    }
    //-->
    </script>
    </head>
    
    <body>
    
    <div id="Header">
    
    </div>
    
    
    <div id="Login" class="sidebox">
    	<div class="boxhead"><h2>Login</h2></div>
    	<div class="boxbody">
        <form name="formConnexion" id="formConnexion" onreset="return confirm('Voulez-vous vraiment recommencer?');" onsubmit="request(readData);">
    		<label for="id">Your SimpleId</label><br />
            <input type="text" class="LoginText" name="id" id="id" />
            <br /><br />
            <label for="password">Your Password</label><br />
            <input type="password" class="LoginText" name="password" id="password"  />
            <br /><br />
            <input name="rememberMe" type="checkbox" value="" id="rememberMe" /><label for="rememberMe">Remember Me</label>
            <br /><br />
            <input type="reset" name="reset" value="Recommencer" class="Submitlogin" style="float:left;" />
            
            <input type="submit" name="submit" value="Login" class="Submitlogin" id="logSub" />
    		</form>
    	</div>
    </div>
    
    
    
    </body>
    </html>
    


    Et voilà le code de la page XMLHttpRequest_getString.php
    <?php 
    header("Content-Type: text/plain");
    
    $id = (isset($_GET["id"])) ? $_GET["id"] : NULL;
    $pass = (isset($_GET["pass"])) ? $_GET["pass"] : NULL;
    
    if ($id && $pass) {
    	echo "SimpleId :  " . $id . " !Password :  " . $pass;
    } else {
    	echo "FAIL";
    }
    
    ?>
    
    Là, je butte vraiment, ey je ne comprends pas pourquoi sa ne marche pas sur cette page uniquement   
    
    
    Bye',
    
    • Partager sur Facebook
    • Partager sur Twitter

    [Ajax] Problème XMLHttpRequest

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown