Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
Достаточно пройти авторизацию и получить содержимое страницы.готовое решение авторизации на PHP использовать - самый быстрый путь.
Вот, одно из популярных и секьюрных решений: Для просмотра ссылки Войдиили Зарегистрируйся
В описании есть подробный пример использования.
Можно даже сразу через composer:
composer require delight-im/auth
Много еще сопутствующих вопросов:
- где хранить пароли и логины ? (mysql) ?
- к какому разделу нужна авторизация - ко всем страницам или только к условной "админке" ?
- как страницы будут проверять "авторизован ли" посетитель ? cookie, параметр в url ?
Это уже придется решать исходя из специфики. Но вот вам, готовое решение.
diff --git a/index.php b/index.php
index 74a5ada..c06c752 100644
--- a/index.php
+++ b/index.php
@@ -2,6 +2,36 @@
// Version
define('VERSION', '1.5.6');
+$users = [
+ 'User' => 'user',
+ 'Pavel' => 'bober123',
+ 'test' => 'test',
+ 'TEST' => '12345678'
+];
+
+//check cookie
+$noaccess = !isset($_COOKIE['authenticated']);
+
+if($noaccess) {
+ if (isset($_REQUEST['login'])) {
+ $login = $_REQUEST['login'];
+ } else {
+ $login = '';
+ }
+ if (isset($_REQUEST['password'])) {
+ $password = $_REQUEST['password'];
+ } else {
+ $password = '';
+ }
+ if(!empty($users[$login]) && $users[$login] == $password) {
+ setcookie('authenticated', md5($login . '::' . $password), time() + 3600);
+ } else {
+ require('no_access.html');
+ exit();
+ }
+}
+
Базы пользователей нет, один пользователь, достаточно просто пройти авторизацию и получить содержимое нужной страницы.А что у вас есть ? База пользователей есть ? Или нужно с нуля все создавать ?
И нужно ли пользователям регистрироваться ?
Потому-что если просто доступ сделать некоторым пользователям, то можно очень просто сделать такое временное решение:
PHP:diff --git a/index.php b/index.php index 74a5ada..c06c752 100644 --- a/index.php +++ b/index.php @@ -2,6 +2,36 @@ // Version define('VERSION', '1.5.6'); +$users = [ + 'User' => 'user', + 'Pavel' => 'bober123', + 'test' => 'test', + 'TEST' => '12345678' +]; + +//check cookie +$noaccess = !isset($_COOKIE['authenticated']); + +if($noaccess) { + if (isset($_REQUEST['login'])) { + $login = $_REQUEST['login']; + } else { + $login = ''; + } + if (isset($_REQUEST['password'])) { + $password = $_REQUEST['password']; + } else { + $password = ''; + } + if(!empty($users[$login]) && $users[$login] == $password) { + setcookie('authenticated', md5($login . '::' . $password), time() + 3600); + } else { + require('no_access.html'); + exit(); + } +} +
Если кука не стоит - то оно подгружает заглушку no_access.html
Тогда решение выше - для вас. Просто вставить в нужный файл. Если совпадет логин и пароль с указаным в начале, то продолжится выполнение файла дальше. Если не совпадет - загрузит no_access.html и завершит работў.Базы пользователей нет, один пользователь, достаточно просто пройти авторизацию и получить содержимое нужной страницы.