javascript - 弹出窗口显示来自 php 和 javascript 的结果

标签 javascript php jquery

我正在尝试实现 javascript 来显示 php 的结果。

基本上,我有一个登录页面。对于登录失败,我希望结果显示在弹出窗口中,而不是仅仅用 php 回显它们。

我尝试实现警报框,但看起来我错过了一些东西。

成功登录将重定向至logged.php,并显示用户名LoginStatus详细信息。

如果登录失败,由于我使用的是存储过程,LoginStatus 将自动显示失败操作的错误消息。

这是我的完整代码 fiddle

这是我的登录页面。

登录.php

$stmt=odbc_exec($conn,"CALL UserLogin (".$_POST['UserId'].",'".$_POST['UserPwd']."','".$_POST['ModuleCd']."','".$_POST['SubModuleCd']."')");

if (!$stmt)
{
"Error : " . odbc_errormsg();
}

if (odbc_fetch_row($stmt))
{

$Username=odbc_result($stmt,"Username");
$LoginStatus=odbc_result($stmt,"LoginStatus");
}

/*Succesful Login*/
if ($LoginStatus==1)
{

$_SESSION["Username"]=$Username;
$_SESSION["LoginStatus"]=$LoginStatus;
header("Location: logged.php");
}

else

/*Fail Login*/
echo $Username=odbc_result($stmt,"Username");
echo $LoginStatus=odbc_result($stmt,"LoginStatus");

html:

<form method="post" name="login">
  <input type="text" name="UserId" value="">
  <input type="password" name="UserPwd" value="">
  <input type="submit" name="login" value="Login">
  </form>

JavaScript:

<script type="text/javascript">
     /*message of fail login*/
            function show_alert() {
                if (LoginStatus != 1) {
                    alert(LoginStatus);
                }
    
    
            </script>

有什么建议吗?

最佳答案

您必须使用 Ajax 向 PHP 发送数据并获取答案并显示弹出消息

HTML:

<form id="login" action="#" method="POST">

            <input type="text" name="username" value="" placeholder="Username" />

            <input type="password" name="password" value="" placeholder="Password" />

            <button id="submit" > Submit </button>

</form>

JS : (你需要 jQuery 库)

jQuery(document).ready(function()
{
jQuery("#login").submit(function(event)
{
    jQuery.ajax(
    {
        url: "login.php",
        type: "POST",
        dataType: "html",
        data: jQuery("#login").serialize(),

        success: function(data)
        {
            if(data == "failed")
            {
                alert("LoginStatus"); // If you want send the variable LoginStatus from PHP to JS, you have to get data back using Json !
            }
            else if(data == "success")
            {
                window.location.href = "logged.php";
            }
        }
    });
    return false;
});
});

PHP:

使用您的 PHP 代码并检查条件是真是假,并将其回显为“失败”或“成功”。

关于javascript - 弹出窗口显示来自 php 和 javascript 的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42106812/

相关文章:

javascript - Div中的图像对齐以Jquery为中心

javascript - 单击后清除变量

javascript - 如何在前端应用程序和后端服务器之间共享cookie?

php - Mac 编程 PHP 时更新不快

php - 在运行时更改键盘语言

javascript - 节点步骤的边缘未在 react-flow-renderer 中呈现

php - 在 PHP 和 MySQL 中生成连续的发票号码(并发)

php - file_put_contents 不起作用

javascript - 重置 AngularJS 表单元素

javascript - 我在 jQuery 中有一个分步过程,有更好的方法来编码吗?