如何使用php显示警报消息?

时间:2020-02-11 12:07:40

标签: php html

我在php代码中进行了一些更改,它可以工作。我现在只想如果用户输入了我想要正确的登录名和密码,就会出现新页面,并带有一条消息,例如“恭喜”。就我而言,它总是移到最后一行

header("WWW-Authenticate: Basic realm='Access denied'");

,这是填充登录名和密码的新形式。即使我填写了这些内容,它也会再次询问我,并再次显示该表格。我该如何解决?

我的HTML代码:

<html>

<head>
</head>

<body>

  <form id="form1" name="form1" method="post" action="verify_user.php">
    <p align="center">Username :
      <input type="text" name="AUTH_USER " id="AUTH_USER " />
    </p>
    <p align="center">Password :
      <input type="password" name="AUTH_PASS" id="AUTH_PASS" />
    </p>
    <p align="center">
      <input type="submit" name="submit" id="submit" value="Login" />
    </p>
  </form>
  <h3 align="center" class="para">
    <?php
    if(isset($_GET['id'])) {
    echo $_GET['id'];
     }
    ?>
  </h3>
</body>

</html>

我的PHP代码:

<?php
function require_auth() {

    $AUTH_USER = 'MAYAR12';
    $AUTH_PASS = '*******';


    // header('Cache-Control: no-cache, must-revalidate, max-age=0');
   if( $has_supplied_credentials = !(empty($_SERVER['PHP_AUTH_USER']) && empty($_SERVER['PHP_AUTH_PASS']))){
       echo "<script>alert('congratulations');</script>";
   }
    $is_not_authenticated = (
        !$has_supplied_credentials ||
        $_SERVER['PHP_AUTH_USER'] != $AUTH_USER ||
        $_SERVER['PHP_AUTH_PASS']   != $AUTH_PASS
    );
    if ($is_not_authenticated) {
        echo "<script>alert('erreur');</script>";


         header("WWW-Authenticate: Basic realm='Access denied'");

    }
}
require_auth();
?>




2 个答案:

答案 0 :(得分:0)

您可以使用此:

Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-24T20:41:47+02:00)
Maven home: C:\apps\apache-maven-3.6.0\bin\..
Java version: 12.0.2, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk-12.0.2
Default locale: en_US, platform encoding: Cp1252
OS name: "windows server 2012 r2", version: "6.3", arch: "amd64", family: "windows"

答案 1 :(得分:0)

查看它是否按照您想要的方式工作

绝对可以做的改进:$ _SESSION /密码加密的HASH

替换:

echo "<script>alert('erreur');</script>";

$error = 'Not connected !';

添加

<?PHP if(isset($error)) { echo " " . $error . " "; } ?>

自定义错误HTML

<?PHP if(isset($error)) { echo "<div class='alert alert-danger'> " . $error . " </div>"; } ?>

MAJ用户名和密码,不正确:以下

$is_not_authenticated = (
!$has_supplied_credentials ||
    $_SERVER['PHP_AUTH_USER'] != $AUTH_USER ||
    $_SERVER['PHP_AUTH_PASS']   != $AUTH_PASS
);

添加

if($_SERVER['PHP_AUTH_USER'] != $AUTH_USER ) {
    $error = 'Error: Username !';
}

if($_SERVER['PHP_AUTH_PASS'] != $AUTH_PASS ) {
    $error = 'Error: Password !';
}

有效用户 连接之后

<?php
if(!isset($_SERVER['PHP_AUTH_USER']) || $_SERVER['PHP_AUTH_PASS'] )) {

    // ERROR NOT CONNECTED HTML FORMULAIRE

} else {
?>

CONNECTED

<?php
} 
?>