LDAP 身份验证失败时无法显示模式弹出窗口

我正在努力通过 PHP 验证来自 LDAP 的用户。我已经尝试了一些代码,现在我可以完美地验证用户。但是在登录失败的情况下,我想显示一个带有一些自定义消息的模式弹出窗口。这是我的代码 -


<?php



if ($_SERVER["REQUEST_METHOD"] == "POST") {

    // username and password sent from form 


    $username = $_POST['username'];

    //print($username);

    $password = $_POST['password'];

    //print($password);

    // using ldap bind


    $ldaprdn  = 'uid=' .$username. ',ou=People,ou=AP,o=abcd.com'; // ldap rdn or dn

    $ldappass = $password;


    // connect to ldap server

    $ldapconn = ldap_connect("ad.abcd.com") or die("Could not connect to LDAP server.");


    if ($ldapconn) {


        try {

    $ldapbind = @ldap_bind($ldapconn, $ldaprdn, $ldappass);

} catch (Exception $e) {


    //echo "<script type='text/javascript'>$('#myModal').modal('show');</script>";

                //echo "<script type='text/javascript'>$('#myModal').fadeIn('show');</script>";

                echo "<script>

         $(window).load(function(){

             $('#myModal').modal('show');

         });

    </script>";

}

        if ($ldapbind) {


            $filter = '(sAMAccountName='.$username.')';

            $result = ldap_search($ldapconn, $ldaprdn, "(cn=*)") or exit("Unable to search LDAP server");

            $entries = ldap_get_entries($ldapconn, $result); 

            $userDN = $entries[0]["ikealegacyuid"][0];          


            echo ('<p style="color:green;">I have the user DN: '.$userDN.'</p>');

            $url = 'Location: logpage01.html?uid=' .$userDN;

            echo $url;

            header($url);

        } else {

         //echo "<script type='text/javascript'>$('#myModal').modal('show');</script>";

                //echo "<script type='text/javascript'>$('#myModal').fadeIn('show');</script>";

                echo "<script>

         $(window).load(function(){

             $('#myModal').modal('show');

         });

    </script>";

        }


    }


}


我尝试了在这里找到的许多解决方案。但没有任何效果。需要一些帮助。


DIEA
浏览 230回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP