Cześć zrobiłem bardzo podstawowy dynamiczny system logowania tylko myślę, że zrobiłem to w trochę mało elegancki sposób. Chodzi mi o to, że kod html, który tworzy button jest tworzony poprzez wywołanie instrukcji echo.
<!doctype html>
<html lang="pl">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<!-- Style CSS-->
<link rel="stylesheet" href="style.css">
<title>Hello, world!</title>
</head>
<body>
<header>
<nav class="navbar navbar-light bg-light justify-content-beetwen">
<a class="navbar-brand ml-3">Brand</a>
<form class="form-inline">
<input class="form-control mr-sm-2 " type="search" placeholder="Search" aria-label="Search">
<button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
</form>
<?php
SESSION_START();
if(isset($_SESSION['zalogowany']) and $_SESSION['zalogowany']==true){
echo
"<a href='wylogowanie.php'>
<button type='button' class='btn btn-outline-success mr-5'>Wyloguj</button>
</a>";
}
else{
echo "<div class='btn-group mr-5'>
<button type='button' class='btn btn-success dropdown-toggle' data-toggle='dropdown' aria-haspopup='true' aria-expanded='false'>
Zaloguj
</button>
<div class='dropdown-menu dropdown-menu-right'>
<form class='px-4 py-3' action='zaloguj.php' method='post'>
<div class='form-group'>
<label for='exampleDropdownFormEmail1'>Login</label>
<input name='login' type='text' class='form-control' id='exampleDropdownFormEmail1' placeholder='Login'>
</div>
<div class='form-group'>
<label for='exampleDropdownFormPassword1'>Hasło</label>
<input name='password' type='password' class='form-control' id='exampleDropdownFormPassword1' placeholder='Hasło'>
</div>
<div class='form-group'>
<div class='form-check'>
<input type='checkbox' class='form-check-input' id='dropdownCheck'>
<label class='form-check-label' for='dropdownCheck'>
Zapamiętaj
</label>
</div>
</div>
<button type='submit' class='btn btn-primary'>Zaloguj</button>
</form>
<div class='dropdown-divider'></div>
<a class='dropdown-item' href='#'>Nowy? Zarejestruj się</a>
<a class='dropdown-item' href='#'>Zapomniałeś hasła?</a>
</div>
</div>";
}
?>
</nav>
</header>
Istnieje jakiś sposób by zrobić to lepiej?