【发布时间】: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:这并不能真正解决任何问题,因为变量总是未定义。