Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AJAX使用返回的php变量写入if语句(Jquery Mobile/AJAX/php)_Php_Jquery_Ajax - Fatal编程技术网

AJAX使用返回的php变量写入if语句(Jquery Mobile/AJAX/php)

AJAX使用返回的php变量写入if语句(Jquery Mobile/AJAX/php),php,jquery,ajax,Php,Jquery,Ajax,我正在尝试创建一个登录脚本,用户将在其中输入用户名和密码。这将通过ajax发送到php脚本,以检查详细信息是否正确。如果是,那么用户应该能够选择一个站点,我一直试图这样显示$'logonContainer'。loadlogin\u DisplaySelectSite.php 我的问题是,如果会话是以有效的用户名启动的,我不知道如何运行此代码。这是我目前的代码,也许有人能帮我 html/jquery mobile: <div data-role="content"> &l

我正在尝试创建一个登录脚本,用户将在其中输入用户名和密码。这将通过ajax发送到php脚本,以检查详细信息是否正确。如果是,那么用户应该能够选择一个站点,我一直试图这样显示$'logonContainer'。loadlogin\u DisplaySelectSite.php

我的问题是,如果会话是以有效的用户名启动的,我不知道如何运行此代码。这是我目前的代码,也许有人能帮我

html/jquery mobile:

<div data-role="content">   
    <form id='login' onsubmit="return false;">      
                <div id='logonContainer' style="background-color: #F8F4FA; padding: 10px;  width:70%; margin: 0 auto; margin-top:15%;">
                    <input type="text" name='user' id='user' placeholder='Username'>
                    <input type="password" name='password' id='password' placeholder='Password'>
                    <input type="submit" id="submitLogin" name="login" value="Login" class='ui-btn ui-btn-c ui-btn-inline' data-theme='c' data-transition='pop'>
                </div>
            </form>
    <div id="resultLog"></div>
</div>
php:


谢谢

您错过了成功活动的签名。 只需将参数添加到Success: 成功:onSuccessdata 并尝试检查,它应该可以正常工作

为了检查事件是否成功触发,最好根据您的开发环境和使用的IDE使用一些调试工具或警报/控制台消息/打印到屏幕等,这将告诉您它是否工作正常


谢谢。

我看到数据还没有定义?您可能还想添加这一行:data:$login.serializein$.ajax

在AJAX函数中,没有向onSuccess函数传递任何内容。我应该如何定义数据?对不起我的无知我是一个完全的ajax新手!您是否尝试添加行数据:$login.serialize?这阻止了脚本返回任何内容?!如果您没有获得任何数据/结果,则表示您没有收到来自服务器/请求页面的任何响应。ifonSuccessdata==1调用将不起作用,因为它不是一个方法,而是一个事件。因此,如果您想基于返回/响应执行任何代码,您应该在onSuccess事件/定义中写入。@Janey:如果您想在整个页面/js中使用响应,您应该将其存储在var例如:var\u response;并使用这个_响应变量来验证或验证任何-谢谢
$(function userLogin() {

        $("#submitLogin").click(function() {
            var theUser = $.trim($("#user").val());
            var thePassword = $.trim($("#password").val());

            if(theUser.length > 0)
            {
                $.ajax({
                  type: "POST",
                  url: "callajax.php",
                  data: ({usr: theUser, pwd: thePassword}),
                  cache: false,
                  dataType: "text",
                  success: onSuccess
                });
            }
        });

        $("#resultLog").ajaxError(function(event, request, settings, exception) {
          $("#resultLog").html("Error Calling: " + settings.url + "<br />HTTP Code: " + request.status);
        });

        function onSuccess(data)
        {
            $("#resultLog").html(data);


        }
        if(onSuccess(data) == 1) 
        {
            $('#logonContainer').load("login_DisplaySelectSite.php");

        } else {

        }

    });
session_start();
if($_REQUEST['usr']=="admin" && $_REQUEST['pwd']=="1234"){

    $_SESSION['USERNAME'] = "admin";
    $_SESSION['SESSIONID']='123456';

    echo "Login CORRECT WOOOOOOOO!! </br>" ;
    //print json_encode($_SESSION);
    print $_SESSION['USERNAME'];
    $loggedon=1;
    echo json_encode( $loggedon);

}
else{
    echo "Incorrect Login :(" ;
    $loggedon=0;
    echo  json_encode($loggedon);
}