我的Ajax php代码无法正常工作

问题描述:

我有这样的代码

ajax.js

var xmlHttp = buatObjekXmlHttp();

function buatObjekXmlHttp()
{
var obj = null;
if(window.ActiveXObject)
    obj = new ActiveXObject("Microsoft.XMLHTTP");
else
    if(window.XMLHttpRequest)
        obj = new XMLHttpRequest();
if(obj == null)
    document.write("Browser tidak mendukung XMLHttpRequest");
return obj;
}

function ambilData(sumber_data, id_elemen)
{
if(xmlHttp != null)
{
    var obj = document.getElementById(id_elemen);
    xmlHttp.open("GET", sumber_data);

    xmlHttp.onreadystatechange = function()
    {
        if(xmlHttp.readyState == 4 && xmlHttp.status == 200)
            obj.innerHTML = xmlHttp.responseText;
    }
}
xmlHttp.send(null);
}

cekpass.php

cekpass.php

<!DOCTYPE HTML>
<html>
<head>
    <title>
        Memeriksa Password
    </title>
    <script src="ajax.js"></script>
    <script>
        function prosesData(sumber_data, id_elemen)
        {
            if(xmlHttp != null)
            {
                var elemen_div = document.getElementById(id_elemen);
                var elemen_user_id = document.getElementById("user_id");
                var elemen_password = document.getElementById("password");
                var url = sumber_data + "?user_id = " + elemen_user_id.value + "&password = " + elemen_password.value;
                xmlHttp.open("GET", url);
                xmlHttp.onreadystatechange = 
                function()
                {
                    if(xmlHttp.readyState == 4 && xmlHttp.status == 200)
                    {
                        if(xmlHttp.responseText == "OK")
                        {
                            elemen_div.innerHTML = "OK";
                            location.href="infoweb.php";
                        }
                        else
                            elemen_div.innerHTML = "User_id atau/dan password salah";
                    }
                }
                xmlHttp.send(null);
            }               
        }
    </script>
</head>
<body>
    <form>
        User ID : <input type="text" name="textuser_id" id="user_id">
        <br>
        Password : <input type="password" name="textpassword" id="password">
        <br>
        <input value="Login" type="button" onclick="prosesData('password.php', 'id_info');">
    </form>
    <div id="id_info"></div>
    <p id="demo"></p>
</body>
</html>

还有这个

password.php

password.php

<?php
header("Cache-Control : no-cache, must-revalidates");
header("Expires : Mon, 26 Jul 1997 00:00:00 GMT");

//Data user-id dan password
$user[] = "anton"; $pass[] = "biola";
$user[] = "ahmad"; $pass[] = "gitar";
$user[] = "dewi"; $pass[] = "piano";
$user[] = "santi"; $pass[] = "keyboard";
$user[] = "salman"; $pass[] = "perkusi";

//Peroleh variable URL
$user_id = $_GET["user_id"];
$password = $_GET["password"];

$ok = FALSE;
for($i=0; $i < count($user); $i++)
{
    if(($user_id == $user[$i]) && ($password == $pass[$i]))
    {
        $ok = TRUE;
        break;
    }
}

session_start(); //Buat sesi
$_SESSION["ok"] = $ok;

if($ok)
{
    $_SESSION["user_id"] = $user_id;
    $_SESSION["password"] = $password;
    print("OK");
}
else
    print("NOT OK");
?>

我想使用带有JavaScript的ajax(而不是数据库,而是数组)进行简单登录,如果正确,它将链接到另一页,但是问题是,当我输入正确答案时,它总是说我错了:(谁能告诉我我的代码出了什么问题:(我还是新手:(

I want to make simple login using ajax with javascript, not with database but with array, if it's correct, it will link to another page, but the problem is, when i put correct answer it always said i'm wrong :( can someone tell me what went wrong with my code :( I'm still new :(

您的网址格式不正确.通过更改

Your url is malformed. Remove unnecessary spaces by changing

var url = sumber_data +?user_id =" + elemen_user_id.value +& password =" + elemen_password.value;

var url = sumber_data +?user_id =" + elemen_user_id.value +& pass =" ="+ elemen_password.value;