Я хотел бы включить страницу PHP для защиты каждой страницы, и после входа в систему ваше имя пользователя будет отображаться в правом верхнем углу,
Кроме того, он ограничивает единственные данные, предоставленные пользователем для входа в систему, такие как его резюме и личная информация, но не видя информацию других пользователей.
структура будет такой же, как и в предыдущем посте
index.php (включая header.php, content.php и footer.php)
Заголовок в header.php будет изменен меню после входа пользователя
Спасибо.
С уважением
Энди
Хорошо, если вы хотите, чтобы скрипт гарантировал, что он будет примерно таким:
во-первых: предполагается, что вы не используете шаблоны проектирования, и это базовый проект php с таким архетипом, как «scripts (папка) css (папка) js (папка) index.php header.php и footer.php». давайте создадим «security.php».
<?php
session_start(); //starting session to acces to it
if(empty($_SESSION["username"])){// if there's no data username in session
header("location: ./login.php"); //go and take them out of here!
}
?>
Теперь у вас есть готовый файл «security.php», вам просто нужно включить его на защищенные страницы и создать страницу «login.php».
Пример: для обеспечения безопасности.
<?php
//@mySecurePage
include "security.php";
//My Page Content Code or event header code if you want validation after loading anything (Best)
?>
Во-вторых: создать страницу входа, как.
<?php
if(!empty($_POST["username"]) && !empty($_POST["password"])){// if all data from login was sent
if($_POST["username"] == "me" && $_POST["password"] == 1234){//your validations here
session_start();//start session to acces it
$_SESSION["username"] == $_POST["username"];//allocate username
header("location: ./securedPageHere.php");//forward to a securedPage
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>My Login Page</title>
</head>
<body>
<form class="" action="" method="post"><!-- action is empty to send data to same page (login)-->
<input type="text" name="username" value="" placeholder="username">
<input type="password" name="password" value="" placeholder="password">
<input type="button" name="login" value="Login">
</form>
</body>
</html>
Теперь мы почти закончили, просто нужно загрузить имя пользователя в строке меню
Третье: загрузить имя пользователя в строке меню. Просто добавьте значение сессий доступа (помните, если вы загрузили «security.php», вы уже начали сеанс
<div><?php print($_SESSION["username"]); ?></div>
Теперь, чтобы использовать кнопку Logut, вы должны уничтожить сессию, поэтому добавьте к ней прослушиватель, а затем просто выполните скрипт:
<?php
unset($_SESSION); //clear session array
session_destroy(); //Destroy session
?>
Надеюсь, это поможет вам.
РЕДАКТИРОВАТЬ: чтобы ограничить доступ к данным, просто используйте данные имени пользователя (лучший идентификатор) из проверенных данных входа, сохраненных в массиве сессии :).
Других решений пока нет …