【问题标题】:How to echo a php variable (which is defined in one page) in different page without anchor tag [duplicate]如何在没有锚标签的不同页面中回显php变量(在一个页面中定义)[重复]
【发布时间】:2018-10-25 05:52:51
【问题描述】:

我在 library.php 中定义了一个带有字符串值的变量,我想在另一个页面 client-login.php 中使用它而不使用锚标记。

库.php:

if(isset($_POST['client-login-submit'])){
$username = trim($_POST['username']);
$password = trim($_POST['password']);

if($username == ""){
    $login_error_message = 'Username field is required!';


}else if($password == ""){
    $login_error_message = 'Password field is required!';


}else{
    $id = Login($username, $password);
    if($id > 0){
        $_SESSION['id'] = $id; // Set Session
        header("location: ../../main.php");
    }else{
        $login_error_message = 'Invalid login details!';
        }
    }
}

客户端登录.php:

<form action="inc/lib/library.php" method="post">

        <h1>LOG IN</h1>
        <input placeholder="Username" type="text" name="username" id="username">
        <input placeholder="Password" type="password" name="password" id="password">
        <input type="submit" name="client-login-submit" value="LOG IN">
        <p>Forget Your Password? <a href="#">RESET</a></p>
        <p><a href="client-sign-up.php">SIGN UP</a></p>
        <?php
        if ($login_error_message != "") {
            echo '<p style="color: red;"><strong>Error: </strong> ' .$login_error_message. '</p>';
        }
        ?>
    </form>

这是我在发生错误后必须显示 $login_error_message 的地方得到的错误...:

Notice: Undefined variable: login_error_message in C:\xampp\htdocs\fashion\client-login.php on line 54

提交表单后,如果有错误,则必须显示,但即​​使在单击之前,上面的错误已经显示...当我单击提交按钮时,它会转到 library.php 页面,该页面为空白。

请您帮助如何在client-login.php 中使用$login_error_message?提前谢谢...

【问题讨论】:

  • $_SESSION 中设置该值?我不太清楚“不使用锚标签”是什么意思。但是,如果您有两个不同的页面,并且您想在第一个页面上设置一个值并在第二个页面上读取该值,那么最常见的第一种方法是使用会话状态。
  • echo '

    错误: ' .isset($login_error_message)?$login_error_message:' '。 '

    ';
  • @SachinAghera:这并不能真正解决任何问题,因为变量总是未定义

标签: php login


【解决方案1】:

您可以将您的变量设置为Session 变量并访问您的其他页面。

In library.php:
$_SESSION['login_error_msg'] = 'your msg';

In client-login.php:
if(isset($_SESSION['login_error_msg']))
{
    echo '<p style="color: red;"><strong>Error: </strong> ' .$_SESSION['login_error_msg']. '</p>';
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-11
    • 2018-11-15
    • 2015-09-20
    • 2014-10-24
    • 1970-01-01
    • 2011-06-26
    相关资源
    最近更新 更多