Der aktuelle unten beschriebene Code funktioniert nicht. Ich möchte den Benutzernamen in Sitzung speichern und auf der Homepage anzeigen. Dies ist der Code, den ich verwende, um den Benutzernamen zu speichern und anzuzeigen. Dies führt zur Startseite, wenn der Benutzername korrekt ist.PHP-Sitzung funktioniert nicht in meinem Code
<input type="text" name="username" placeholder="Username" />
<input type="password" name="password" placeholder="Password" />
<input type="submit" name="submit" class="btn btn-success" value="Login" />
<?php
session_start();
$error='';
if (isset($_POST['submit']))
{
$username = $_SESSION['username'];
$username = $_SESSION['login_user'];
if (empty($_POST['username']) || empty($_POST['password']))
{
echo "<script type='text/javascript'>alert('Username or Password is invalid')</script>";
}
else
{
$username=$_POST['username'];
$password=$_POST['password'];
$con = mysqli_connect("mysql.site","username","password","database");
$username = stripslashes($username);
$password = stripslashes($password);
$username = mysqli_real_escape_string($username);
$password = mysqli_real_escape_string($password);
$query = mysqli_query($con,"select * from userprofile where password='$password' AND username='$username'");
$rows = mysqli_num_rows($query);
if ($rows == 1)
{
$_SESSION['username']=$username;
$_SESSION['login_user']=$username;
if (isset($_POST['rememberme'])) {
setcookie('username', $_POST['username'], time()+60*60*24*365);
setcookie('password', md5($_POST['password']), time()+60*60*24*365);
}
else
{
setcookie('username', $_POST['username'], false, '/account', 'www.example.com');
setcookie('password', md5($_POST['password']), false, '/account', 'www.example.com');
}
header('Location: home.php');
}
else
{
echo "<script type='text/javascript'>alert('Invalid Username & Password')</script>";
header('Location: home.php');
}
mysqli_close($con);
}
}
?>
Dieser Code wird zur Seite login (index.php) navigieren, wenn die Sitzung leer ist. es funktioniert
home.php
<?php
if (!isset($_SESSION)) {
session_start();
}
if(!$_SESSION['username']) {
header('Location: index.php');
exit;
}
?>
Dieser Code funktioniert jetzt nicht, aber wenn ich diesen Code löschen.
if(!$_SESSION['username']) {
header('Location: index.php');
exit;
}
kann Ihre Anfragen annehmen ändern arbeiten gut und Sie bekommen alles, was Sie aus der Datenbank benötigen. Deklarieren Sie den session_start() am Anfang Ihrer Seite. bring den HTML-Code unter dem PHP-Code herunter. Es sollte funktionieren. –