[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Какое обозначение страницы
Страницы: 1, 2
olimpset
Например есть две страница: index.php и login.php,
что надо добавить в index.php, что бы если после того как я на странице index и перейду на login, то авторизация сбрасывается, я пробовал так, но нечего не получилось:
if(login.php)
{
unset($_SESSION['username']);
}
Игорь_Vasinsky
if($_SERVER['PHP_SELF'] == '/login.php')
{
unset($_SESSION['username']);
}


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
olimpset
Спасибо, как я за сервер не вспомнил
olimpset
А в cookie надо выводить логин пользователя или не надо?
Игорь_Vasinsky
как хочешь.

только пароль кроме БД ввиде хеша (желательно с солью) ни где больше втыкать не надо rolleyes.gif

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
olimpset
Все равно, когда на странице index, ввожу в адресной стоке другую страницу, то нечего не сбрасывается, твой скрипт не работает, , или то надо редиректом?
Игорь_Vasinsky
может без слеша?

echo $_SERVER['PHP_SELF'];

чё кажет?

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
olimpset
/blog/index.php, я и так даже пробовал, не убирает сессии, есть другой метод?
olimpset
а куда надо было вставить:
if($_SERVER['PHP_SELF'] == '/login.php')
{
unset($_SESSION['username']);
}

в index.php?
Игорь_Vasinsky
)) в login.php - у тя же в условии именно это прописано)

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
arlamar
А можно спросить, зачем в login.php проверять if($_SERVER['PHP_SELF'] == '/login.php') ?)
olimpset
index.php
<?php
include_once 'config.php';;
if(!isset($_SESSION['username']) && isset($_COOKIE['username']))
{
$_SESSION['username'] = $_COOKIE['username'];
}
$username = $_SESSION['username'];
$username_sql = mysql_query("SELECT * FROM users WHERE username = '$username'");
$row = mysql_fetch_array($username_sql);
if($row['username'] != $_COOKIE['username'])
{
echo "Вы не авторизированы, через 5 секунд вы перейдете на страницу авторизации!";
echo '<script type="text/javascript">(function(){setTimeout(function(){document.location.replace(\'login.php\');}, 5000);})();</script>';
}
else
{
if(empty($_SESSION['username']))
{
echo "Войдите в свой аккаунт";
}
else
{
echo "Добро пожаловать";
}
}



login.php:
<?php
ob_start();
include_once 'login_html.php';
session_start();
include_once 'config.php';;
mysql_query("SET NAMES CP1251");
if(isset($_POST['username']))
{
$username = $_POST['username'];
}
if(isset($_POST['password']))
{
$password = $_POST['password'];
}
if(isset($_POST['remember']))
{
$remember = $_POST['remember'];
}
if(empty($username))
{
exit ("Введите ваш логин");
}
if(empty($password))
{
exit ("Введите пароль");
}
$username_html = htmlspecialchars($username);
$username_trim = trim($username);
$password_trim = trim($password);
$password_md5 = md5($password_trim);
$sql = mysql_query("SELECT * FROM users WHERE username = '$username'");
$row = mysql_fetch_array($sql);
if(empty($row['username']))
{
exit ("Такой пользователь не найден");
}
else
{
if($row['password'] == $password_md5)
{
$_SESSION['username'] = $row['username'];
$_SESSION['password'] = $row['password'];
}
if($remember)
{
setcookie('username',$username_trim,time() + 3600 * 24 * 7);
setcookie('password',$password_md5,time() + 3600 * 24 * 7);
echo "Вы запомнены на 1 неделю".'<br />';
header("Location: b.php");
}
if(count($_SESSION['username']) > 0)
{
echo "Успешный вход";
}
else
{
exit ("Неизвестная ошибка");
}
}



?>

Так вам легче будет, может так сделаем что то!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.