【发布时间】:2012-08-12 07:24:27
【问题描述】:
我需要能够存储在会话中提交的密码,因为目前使用 php_self 方法页面只是重新加载,好像用户没有正确输入密码(这发生在 Firefox 中,它实际上工作正常在 Chrome / Safari 中没有会话),所以我相信它需要一个会话才能在 FF 中工作,但我对 PHP 很陌生,不知道如何去做,这是代码:
提前致谢
<?php
session_start();
$Password = 'hello';
if (isset($_POST['submit_pwd'])){
$pass = isset($_POST['passwd']) ? $_POST['passwd'] : '';
if ($pass != $Password) {
showForm("error", "WRONG PASSWORD");
exit();
}
} else {
showForm();
exit();
}
function showForm($Inputclass="mister", $Placeholder="PLEASE ENTER PASSWORD"){
?>
使用 HTML:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="pwd" id="pwd">
<input class="<?php echo $Inputclass; ?>" name="passwd" type="password" size="79" style="margin-left: -100px;" placeholder="<?php echo $Placeholder; ?>"/>
<br/>
<input class="text" name="submit_pwd" value="Login" type="image" src="loginkey.png" style="position: relative; left: 240px; top: -35px;">
</form>
【问题讨论】:
-
你确定这是你能想象到的最安全的方式吗?
-
服务器端代码独立于浏览器。如果它适用于 Chrome 而不是 Firefox,那么您的问题与 PHP 无关。
-
我知道我应该使用哈希、盐等 - 这是一个非常简单的项目,所以我只需要一个基本密码,但我需要它才能跨浏览器工作
-
坏主意,每次都让他们重新装满
-
谢谢两位 - 任何想法为什么 FF 版本只是令人耳目一新?我认为这与它可能存储 cookie 的方式有关