Hello !
Voilà j'ai un petit problème, concernant cette page: http://canalpc.fr/new/ (identifiants test2/test2). Chez moi, la connexion se passe très bien, mais chez mes amis codeurs, il ne se passe strictement rien, même pas une erreur dans la console javascript...
Edit: Ca y'est ! j'ai une erreur !:
Code :
- Erreur : uncaught exception: Permission refusée d'appeler la méthode XMLHttpRequest.open
|
Mais comment régler ça ?
Pour info, voici le code AJAX pour le login, et la page PHP qui lui est attribuée:
ajax.js :
Code :
- // Request Login (va interroger requests/login.php, récupère l'echo, et le renvoie vers loginAction(); )
- function login (form, page, args)
- {
- page_var = page;
- args_var = args;
- form_var = form;
- var xhr = getXhr();
- member_name = document.forms[form].member_name.value;
- member_password = document.forms[form].member_password.value;
-
- // On teste si les champs ne sont pas vides
- if (member_name == '')
- {
- document.getElementById("cell_member_name" ).className = 'red';
- document.getElementById("div_member_name" ).innerHTML = "<div class='erreur'>!</div>";
- }
- else if (member_password == '')
- {
- document.getElementById("cell_member_password" ).className = 'red';
- document.getElementById("div_member_password" ).innerHTML = "<div class='erreur'>!</div>";
- }
- else
- {
- xhr.onreadystatechange = function()
- {
- if (xhr.readyState == 4 && xhr.status == 200)
- {
- str = xhr.responseText;
- loginAction(str);
- }
- }
- xhr.open("POST", 'requests/login.php', true);
- xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
- xhr.send("refer=1&member_name="+member_name+"&member_password="+member_password);
- }
- }
|
login.php :
Code :
- session_start();
- $_SESSION["auth"] = 1;
- include ("../config.php" );
- # Rappel:
- # {1} = Connexion réussie
- # {2} = Mauvais member_name
- # {3} = Mauvais member_password
- $query = "SELECT member_id,member_password FROM cpc_members WHERE member_name='". mysql_real_escape_string($_POST["member_name"]) ."'";
- $sql = mysql_query ($query);
- if (mysql_num_rows($sql) == 0)
- {
- echo "2";
- }
- else
- {
- $result = mysql_fetch_object($sql);
- if (md5($_POST["member_password"]) == $result->member_password)
- {
- $_SESSION["member_id"] = $result->member_id;
- $_SESSION["login"] = 1;
- echo "1";
- }
- else
- {
- echo "3";
- }
- }
|
Edit: le code d'appel de xhr:
Code :
- function getXhr()
- {
- if (window.XMLHttpRequest)
- return new XMLHttpRequest();
- else if (window.ActiveXObject)
- {
- try
- {
- return new ActiveXObject("Msxml2.XMLHTTP" );
- }
- catch (e)
- {
- return new ActiveXObject("Microsoft.XMLHTTP" );
- }
- }
- else
- {
- return false;
- alert ("Votre navigateur ne supporte pas la technologie Ajax." );
- }
- }
|
Désolé pour la longueur du message, en espérant qu'il n'y a pas eu de relachement
Bonne journée
Message édité par kmeleon1 le 18-07-2007 à 14:10:05
---------------
.:: Kmeleon ::.