Ich habe eine Menge Fragen wie diese hier gesehen, aber es scheint, als würde nichts davon helfen. Ich habe erst dieses Semester angefangen, PHP zu lernen und habe in der letzten Januarwoche formell angefangen, auf der Server-Seite zu arbeiten (gemäß Anweisungen des Lehrers).Header funktioniert nicht, bleibt im Log in Seite
Ich möchte, dass die Benutzer in der Lage sein, sich anzumelden und zu einer Begrüßungsseite weitergeleitet, aber wenn er versucht, sich anzumelden, es bleibt auf der gleichen Seite mit nichts
<?php
ob_start();
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "";
$dbname = "dbadmin";
$dbcon = new mysqli($dbhost, $dbuser, $dbpass, $dbname);
if (isset($_POST["submit"])) {
if (!empty($_POST['loginUsername']) && (!empty($_POST['loginPassword']))) {
$username = $_POST['loginUsername'];
$password = $_POST['loginPassword'];
$query = mysqli_query($dbconn, "SELECT * FROM userstable WHERE username= '$username' AND userPassword = '$password'");
$numrows = mysqli_num_rows($query);
if ($numrows !=0) {
while ($row = mysqli_fetch_assoc($query)) {
$dbusername = $row['loginUsername'];
$dbpassword = $row['loginPassword'];
}
if ($username == $dbusername && $password == $dbpassword) {
session_start();
$_SESSION['sess_user']=$user;
header('Location: home.php');
} else {
echo "Invalid Username or Password";
}
}
}
}
?>
passiert ich hinzugefügt haben ob_start(); Denn wie ich hier recherchiert habe, funktioniert es die meiste Zeit, aber nicht auf meinem Code.
Edit: Hier ist der HTML-Code:
<html>
<head>
<title>DYLAN EVERYWHERE</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div class="fullContainer">
<div class="header">
<h1>DYLAN'S WEBSITE BRAH</h1>
</div>
<div class="subtext">
<h4>DYLAN'S NAME EVERYWHERE BRAH</h4>
</div>
<div class="loginBox">
<form class="login">
<h3>LOG ON TO DYLAN'S SITE BRAH</h3>
<input type="text" name="loginUsername" placeholder="DYLAN USERNAME BRAH"><br>
<input type="password" name="loginPassword" placeholder="DYLAN PASSWORD BRAH"> <br>
<input class="loginButton" type="submit" name="submit" value="Log In">
</form>
<br>
<div class="registerText">
<span style="color: black;">
DONT HAVE AN ACCOUNT? DONT WORRY BRAH, SIGN UP <span class="here"><a href="register.php">HERE</a> BECAUSE DYLAN WEBSITE BRAH</span>
</span>
</div>
</div>
</div>
</body>
</html>
** Gefahr **: Sie sind ** anfällig für [SQL-Injection-Angriffe] (http://bobby-tables.com/) * * dass Sie sich selbst (http://stackoverflow.com/questions/60174/best-way-to-prevent-sql-injection-in-php) von [verteidigen] müssen. – Quentin
Haben Sie das Handbuch gelesen? http://php.net/manual/en/function.header.php - die Beispiele dort zeigen Ihnen, was Sie vermissen. –
'$ dbcon = new mysqli ($ dbhost, $ dbuser, $ dbpass, $ dbname);' - Einfach: Sie haben hier die falsche Variable '$ query = mysqli_query ($ dbconn' <<<) verwendet und die Fehlerberichterstattung hätte Ihnen gesagt über eine undefinierte Variable –