php-如何将注册系统的错误回显到另一个索引文件

我试图将注册系统错误回显到主要的index.php文件,但我做错了什么.有人可以解释我做错了什么以及如何做对了吗?

index.php文件.

<?php 
session_start();
include "config.php"; 

?>

<div class="container">
<h1>Registration</h1>

<?php if(!empty($error)): ?>
<div class="alert alert-danger alert-dismissible">
<ul>
    <li>
        <?php echo $error; ?>
    </li>
</ul>
</div>
<?php endif; ?>

    <button class="close" data-dismiss="alert" aria-label="close">
        <span aria-hidden="true">&times;</span>
    </button>

    <form action="main.php" method="post">
        <p>Username: </p>
        <p><input type="text" name="username" autocomplete="off"></p>
        <p>Password: </p>
        <p><input type="password" name="password" autocomplete="off"></p>
        <p><button name="send" class="btn btn-primary" id="btn">Send</button></p>
    </form>

</div>
</div>

main.php文件..

    <?php 
include "config.php";

if(isset($_POST['send'])) {
    $username = $_POST['username'];
    $password = $_POST(md5['password']);

    if(empty($_POST['username'])) {
        $error = "Username is empty<br/>";
    }

    if(empty($_POST['password'])) {
        $error = "Password is empty";
    }

    $query = mysqli_query($connect,"INSERT INTO register(username,password) VALUES('$username', '$password')")
    or die(mysql_error());
    echo "Registred";
}

$_SESSION['error'] = $error;

?>

解决方法:

未定义$error.

<?php echo $error; ?>

应该

<?php echo $_SESSION['error'];?>

或如下修改index.php文件

<?php 
session_start();
include "config.php"; 
// added this line to your code
$error = (isset($_SESSION['error'])) ? $_SESSION['error'] : "";
?>

<div class="container">
<h1>Registration</h1>

<?php if(!empty($error)): ?>
<div class="alert alert-danger alert-dismissible">
<ul>
    <li>
        <?php echo $error; ?>
    </li>
</ul>
</div>
<?php endif; ?>

    <button class="close" data-dismiss="alert" aria-label="close">
        <span aria-hidden="true">&times;</span>
    </button>

    <form action="main.php" method="post">
        <p>Username: </p>
        <p><input type="text" name="username" autocomplete="off"></p>
        <p>Password: </p>
        <p><input type="password" name="password" autocomplete="off"></p>
        <p><button name="send" class="btn btn-primary" id="btn">Send</button></p>
    </form>

</div>
</div>
上一篇:php – 在Woocommerce注册表单中添加条款和条件复选框


下一篇:php – 用户注册CodeIgniter