Note: I am German. So some irrelevant text is in german like e.g. some php echo messages.
这可能只是初学者的错误。但我搜索了一整夜,并没有找到解决我问题的答案。我希望你能帮助我。
我想使用 XXAMP 及其 mysql 数据库创建一个 php 登录脚本。 我通过 phpmyadmin 创建了一个数据库。
[这里可能是该数据库的图像] - 但是:“您需要至少 10 个声誉才能发布图像。” 抱歉。
然后我开始编写login.php 脚本。看起来是这样的:
<?php
session_start();
?>
<?php
$verbindung = mysql_connect("127.0.0.1", "myname" , "mypassword")
or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
mysql_select_db("homepage") or die ("Datenbank konnte nicht ausgewählt werden");
$username = $_POST["username"];
$password = md5($_POST["password"]);
$abfrage = "SELECT username, password FROM access WHERE username LIKE '$username' LIMIT 1";
$ergebnis = mysql_query($abfrage);
$row = mysql_fetch_object($ergebnis);
// $count = mysql_num_rows($ergebnis);
if($row->password == $password) {
$_SESSION["username"] = $username;
echo "Login erfolgreich. <br> <a href=\"home.php\">Weiter</a>";
}
else {
echo "Benutzername und/oder Passwort waren falsch. <a href=\"index.htm\">Login</a>";
}
?>
我已经在单独的 php 文件中测试了与数据库的连接。 它有效。
但是当我尝试登录我的index.htm时:
<html>
<head>
<title>Login</title>
</head>
<body>
<form action="login.php" method="post">
<input type="text" size="24" maxlength="50" name="username"<br>
<input type="password" size="24" maxlength="50" name="password"<br>
<input type="submit" value="Login">
</form>
</body>
</html>
我在login.php上得到了答案:
password == $password) { $_SESSION["username"] = $username; echo "Login erfolgreich. Weiter"; } else { echo "Benutzername und/oder Passwort waren falsch. Login"; } ?>
我尝试了很多方法,但没有任何帮助。
也许您知道为什么它不起作用?
我将非常感激。
最佳答案
试试这个 索引.html
<html>
<head>
<title>Login</title>
</head>
<body>
<form action="login.php" method="post">
<input type="text" size="24" maxlength="50" name="username"<br>
<input type="password" size="24" maxlength="50" name="password"<br>
<input type="submit" value="Login">
</form>
</body>
</html>
和login.php
<?php
session_start();
$verbindung = mysql_connect("127.0.0.1", "myname" , "mypassword")
or die("Verbindung zur Datenbank konnte nicht hergestellt werden");
mysql_select_db("project") or die ("Datenbank konnte nicht ausgewählt werden");
$username = $_POST["username"];
$password = md5($_POST["password"]);
$abfrage = "SELECT username, password FROM user WHERE username LIKE '".$username."' LIMIT 1";
$ergebnis = mysql_query($abfrage);
if (!$ergebnis)
{
die("mySQL error: ". mysql_error());
}
$row = mysql_fetch_object($ergebnis);
// $count = mysql_num_rows($ergebnis);
if($row->password == $password) {
$_SESSION["username"] = $username;
echo "Login erfolgreich. <br> <a href=\"home.php\">Weiter</a>";
}
else {
echo "Benutzername und/oder Passwort waren falsch. <a href=\"index.htm\">Login</a>";
}
?>
注意::mysql 扩展已弃用。如果您正在做新项目,请使用 mysqli
关于使用 XAMPP 和 MySQL 的 PHP 登录脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31714150/