<?php
//index.php
session_start();
if (isset($_SESSION['username'])) {
header('Location: Pro_Lesson.php');
}
if (isset($_POST['username'], $_POST['password'])){
if(empty($_POST['username']) || empty( $_POST['password'])){
echo "username or password are empty";
}else {
header('Location: login.php');
}
}
?>
<html>
<head>
</head>
<body>
<h3>User Login</h3>
<table border="0">
<form method="POST" action="index.php">
<tr><td>Username</td><td>:</td><td><input type="text" name="username" size="20"></td></tr>
<tr><td>Password</td><td>:</td><td><input type="password" name="password" size="20"></td></tr>
<tr><td> </td><td> </td><td><input type="submit" value="Login"></td></tr>
</form>
</table>
</body>
</html>
如何在成功验证用户名和密码后将表单数据发布到另一个php页面?它安全吗?
答案 0 :(得分:2)
你可以这样做:
$_SESSION['posted'] = $_POST;
在其他php页面中:
print_r($_SESSION['posted']);
答案 1 :(得分:0)
我不确定你在问什么,但我会采取刺。
您可能只关心用户名(或用户ID)。您应该做的是存储用户在cookie(或基于会话的cookie)中进行身份验证的情况。只是将用户的用户名(或用户ID)存储在用户可编辑的cookie中是一个非常糟糕的想法(tm)。您应该做的是在会话ID的后端有一个表,cookie存储主ID的随机散列,然后您可以使用它来查找您存储的有关该用户的信息。 看起来很复杂,但事实并非如此。如果你愿意,我可以在这方面进一步扩展。
你可以做felipsmartins建议的,但你不应该把用户的密码存储在任何地方。