将密码传递给下一个php页面

时间:2012-12-10 02:26:55

标签: php database passwords phpmyadmin

想知道我是否可以得到一些快速帮助! 创建一个简单的网站,为了管理员的目的,我需要能够访问一个页面,我可以上传和删除phpmyadmin数据库中的东西。 我遇到麻烦的事情是能够从输入的html页面发送密码到下一页进行检查。所以我想从“admin.html”开始,它有一个密码文本框。然后下一页是“adminmenu.php”。只有在密码与数据库用户匹配时才能访问和adminmenu.php。 (请记住,密码不存储在类似于此类的其他问题的表中)

这是我在admin.html(密码框)

上的表单
<form name="input" action="adminmenu.php" onsubmit="return validateForm()" method="post">
Password: <input type="text" name="password">
<input type="submit" value="Submit">
</form>

所以密码作为下一页的“密码”发送了吗?

之后,我真的不知道怎么检查它。这就像我不确定的猜测:

$handle = mysql_connect("localhost", "uMoviesRoot","password") or die ('Error:' .mysql_error())
mysql_select_db("movies");

感谢任何帮助人员!

3 个答案:

答案 0 :(得分:1)

编辑:

好的,我想我明白你想要什么。你有admin.html:

<!doctype html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>Blah</title>
    </head>

    <body>
        <form action="adminhandle.php" method="POST">
            Password: <input type="password" name="pass" />
            <input type="submit" name="submit" value="Log on" />
        </form>
    </body>

</html>

adminhandle.php:

<?php
session_start();

$handle = mysql_connect("localhost", "uMoviesRoot", "$_POST['pass']") or die ('Error:' .mysql_error())
mysql_select_db("movies");

if ($handle) $_SESSION['logged_in'] = true;
?>

adminmenu.php:

<?php
session_start();

if ($_SESSION['logged_in']) {
    // show menu or whatever
} else {
    echo "Password failed!";
}
?> 

退后一步,获得一个很好的资源来学习。我推荐Larry Ullman's book

答案 1 :(得分:0)

密码以

的形式发送
$_POST['password']

不是'密码'或'$密码'。

因此,如果您想使用它连接到mysql_connect,则需要执行

mysql_connect("localhost", "uMoviesRoot", $_POST['password'])

但是,您需要为您访问的每个新页面“保留”密码。您可以将它存储在会话中,但如果它位于共享主机服务器上,则不是一个好主意。

答案 2 :(得分:-1)

在某些PHP脚本之间传输数据有一些方法。

最简单的是使用Sessions。

一开始你必须做一个

session_start();

然后你可以使用$ _SESSION数组,这是用户特定的。

所以至少你有:

<?php session_start(); $_SESSION["password"] = $_POST["password"]; mysql_connect(..., $_SESSION["password"]);...?>

但要注意安全! 如果您将密码或传输到MySQL的任何其他字符串直接访问并且不针对SQL注入进行解析,则存在许多安全风险!