Bejelentkezés nem sikerül?
Üdvözlet!
A gondom az volna, hogy készítettem egy felhasználói fiókot mysql segítségével.
Készítettem egy bejelentkező oldalt, ám a bejelentkezés nem működik.
Itt a kód:
<?php
$db = new mysqli("localhost","root","","felhasznalok");
if(isset($_POST["sublogin"])){
$errors = array();
$true = true;
if(empty($_POST["username"])){
$true=false;
array_push($errors, "A felhasználónév mező üres!");
}
if(empty($_POST["password"])){
$true=false;
array_push($errors, "A jelszó mező üres!");
}
if($true){
$username = mysqli_real_escape_string($db, $_POST['username']);
$password = mysqli_real_escape_string($db, $_POST['password']);
$password = md5($password);
$sql = "SELECT felhasznalonev, jelszo FROM users WHERE felhasznalonev='$username' AND jelszo='$password'";
$query = $db->query($sql);
if(mysqli_num_rows($query) ==1){
session_start();
$_SESSION['felhasznalonev'] = $username;
header('location: index.php');
}else{
array_push($errors, "Ezzel a felhasználónévvel és jelszóval nincs felhasználó!");
array_push($errors, mysqli_num_rows($query));
}
}
}
$db->close();
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Főoldal</title>
<link rel="stylesheet" type="text/css" href="styles/style.css">
</head>
<body>
<div class="navbar" id="mynavbar">
<a class="active-button" href="index.php">Főoldal</a>
<a class="navbar-button" href="me.php">Bemutatkozás</a>
<a class="navbar-button" href="stories.php">Történeteim</a>
<a class="navbar-button registr" href="regist.php">Regisztráció</a>
<a class="navbar-button log" onclick="login()">Bejelentkezés</a>
<a class="navbar-button icon" href="javascript:void(0);" style="font-size:15px;" onclick="respnavbar()">☰</a>
</div>
<form method="post" action="index.php">
<div class="login-box" id="login-box">
<div class="login">
<form action="index.php" method="POST">
Felhasználónév:<br />
<input type="text" id="username" name="username"><br />
Jelszó:<br />
<input type="password" id="passw" name="password">
<input type="submit" value="belépés" name="sublogin" style="padding:2px;">
</form>
</div>
</div>
</form>
<div class="content">
<div class="header">
<h1 class="welcome">Üdvözöllek a weboldalamon!</h1>
</div>
<?php
if(!empty($errors)){
foreach($errors as $key){
echo $key."<br />";
}
}
?>
</div>
<script src="scripts/js_script.js"></script>
</body>
</html>
Itt az adatbázisról egy kép: http://www.kepfeltoltes.eu/view.php?filename=382N_vtelen22.png
kicsit rövidnek tűnik az a password mező :-D
MD5 32 karakter hosszú.
$true=false;
Ezért két hét f#szkorbács járna. Soha ne használj foglalt kulcsszavakat változókban, így meg főképp ne!
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!