Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
Dolor
2 / 0 / 0
Регистрация: 02.08.2013
Сообщений: 39
#1

Выход с сайта

07.08.2013, 19:31. Просмотров 1205. Ответов 19
Метки нет (Все метки)

Здравствуйте, я создаю сайт, регистрацию я уже сделал, пытаюсь сделать выход с сайта.
Делал вот так:
Создаю файл logout.php
PHP
1
2
3
4
5
<?php
session_start();
$_SESSION = array();
session_destroy();
header('Location: index.php');
А на index.php вставляю такой код:
PHP
1
2
3
4
5
6
7
8
<?php
    // Проверяем, пусты ли переменные логина и id пользователя
    if (empty($_SESSION['login']) or empty($_SESSION['id']))
{
// Если не пусты, то мы выводим ссылку
   echo "<br><a href='logout.php'>logout</a>";
    }
?>
Всё бы ничего, а кнопочка и для гостей видна. Нужно скрыть её.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.08.2013, 19:31
Ответы с готовыми решениями:

Выход из сессии
Проблема с выходом. Выходит из сессии после второго нажатия на кнопку...

все пропало выход на всех страницах
logout.php &lt;?php session_start(); unset ($_SESSION); unset ($_SESSION);...

помогите написать код, чтоб при закрытии странички чата, выход происходил автоматом
Ребята помогите с чатом!!! &lt;input type=&quot;button&quot; value=&quot;Выход&quot;...

Ссылка на выход с сайта
Здравствуйте, нашел код простенького сайта с регистрацией, входом и выходом,...

Реализовать выход с сайта session
Есть ссылка на выход: &lt;li&gt;&lt;a href=&quot;logout.php&quot;&gt;Exit&lt;/a&gt;&lt;/li&gt; Код пхп:...

19
MVS76
Не мoдepaтор
339 / 314 / 94
Регистрация: 07.07.2012
Сообщений: 1,015
Записей в блоге: 7
07.08.2013, 19:42 #2
Может тут че нить найдете, у вас неправильная "проверка - ответ" »»»
0
Dolphin
805 / 790 / 199
Регистрация: 21.09.2012
Сообщений: 2,631
07.08.2013, 19:46 #3
PHP
1
2
3
4
session_start();
session_unset();
session_destroy();
header('Location: index.php');
PHP
1
2
3
4
5
6
// Проверяем, пусты ли переменные логина и id пользователя
if (!empty($_SESSION['login']) AND !empty($_SESSION['id']))
{
   // Если не пусты, то мы выводим ссылку
   echo "<br><a href='logout.php'>logout</a>";
}
1
MVS76
Не мoдepaтор
339 / 314 / 94
Регистрация: 07.07.2012
Сообщений: 1,015
Записей в блоге: 7
07.08.2013, 19:50 #4
Цитата Сообщение от MVS76 Посмотреть сообщение
Может тут че нить найдете, у вас неправильная "проверка - ответ" »»»
А вообще ТС ст0ит почитать тему на которую я дал ссылку, очень будет полезно на будущее.
0
Dolor
2 / 0 / 0
Регистрация: 02.08.2013
Сообщений: 39
07.08.2013, 21:41  [ТС] #5
Запускаю страницу, выдает ошибку:
Parse error: syntax error, unexpected $end in Z:\home\test.com\www\index.php on line 57
Сначала было
Parse error: syntax error, unexpected $end in Z:\home\test.com\www\index.php on line 59
На линии 59 - тэг </html>.
Я его стёр, дальше:
Parse error: syntax error, unexpected $end in Z:\home\test.com\www\index.php on line 58
Тэг </body>.
И так далее...
0
Dealiss
293 / 281 / 84
Регистрация: 10.05.2013
Сообщений: 920
07.08.2013, 21:55 #6
Цитата Сообщение от Dolor Посмотреть сообщение
Parse error: syntax error, unexpected $end
Это значит, что не определен конец файла! Убедитесь что все {},"",'',() - закрыты...
0
MVS76
Не мoдepaтор
339 / 314 / 94
Регистрация: 07.07.2012
Сообщений: 1,015
Записей в блоге: 7
07.08.2013, 22:00 #7
Такие ошибки отлично видно по подсветке в файловом редакторе Notepad++
0
Dolor
2 / 0 / 0
Регистрация: 02.08.2013
Сообщений: 39
08.08.2013, 00:35  [ТС] #8
Всё сделал, но кнопочка всё же видна гостям.

Добавлено через 3 минуты
Всё заработало, спасибо!
0
MVS76
Не мoдepaтор
339 / 314 / 94
Регистрация: 07.07.2012
Сообщений: 1,015
Записей в блоге: 7
08.08.2013, 00:35 #9
...удалил
0
Dolor
2 / 0 / 0
Регистрация: 02.08.2013
Сообщений: 39
08.08.2013, 17:22  [ТС] #10
Эмм, мне ещё надо сделать, что-бы при входе выводился логин.
Вот код:
PHP
1
2
echo "Вы вошли на сайт, как:"; 
echo $_SESSION['login'];
Но когда я вставляю этот синтаксис, он конфликтует с кодом Выхода, тот становится видным для гостей.
Подскажите, может код старый.
0
MVS76
Не мoдepaтор
339 / 314 / 94
Регистрация: 07.07.2012
Сообщений: 1,015
Записей в блоге: 7
08.08.2013, 17:36 #11
Примерно так
PHP
1
2
3
4
5
6
7
8
9
10
11
<?php
if (!empty($_SESSION['login']) && !empty($_SESSION['id']))
{
   // Если не пусты, то мы выводим ссылку
   echo "Здравствуйте,".$_SESSION['login'];
   echo "<br><a href='logout.php'>Выход</a>";
} else {
   echo "Здравствуйте, Гость";
   echo "<br><a href='auth.php'>Войти</a>";
}
?>
0
Dolor
2 / 0 / 0
Регистрация: 02.08.2013
Сообщений: 39
08.08.2013, 18:35  [ТС] #12
Спасибо, всё получилось!

Добавлено через 25 минут
И последний вопрос, как поменять цвет ссылки?
Пробовал:
PHP
1
echo "<p><span style='$color'><a href='login.php'># Вход</a></span></p>";
А в начало:
PHP
1
$color = "red";
0
MVS76
Не мoдepaтор
339 / 314 / 94
Регистрация: 07.07.2012
Сообщений: 1,015
Записей в блоге: 7
08.08.2013, 18:43 #13
Цитата Сообщение от Dolor Посмотреть сообщение
<span style='$color'><a href='login.php'># Вход</a></span>
Лучше конечно в css файле, ну а вообще
HTML5
1
2
3
4
5
<?php
$color = "red";
?>
 
<a href='login.php' style='text-decoration: none; color:<?=$color;?>'># Вход</a>
0
OnYourLips
506 / 356 / 13
Регистрация: 12.03.2012
Сообщений: 1,896
08.08.2013, 20:09 #14
Напомню, что обычно забывают защиту от csrf при logout.
0
NEbO
593 / 460 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
Завершенные тесты: 3
08.08.2013, 20:43 #15
а я тогда напомню, что защиту от csrf забывают почти всегда
post точно так же легко делается через невидимую форму на джаваскрипте; X-Frame-Options помогает не всегда
0
Dolor
2 / 0 / 0
Регистрация: 02.08.2013
Сообщений: 39
08.08.2013, 21:09  [ТС] #16
Цитата Сообщение от MVS76 Посмотреть сообщение
Лучше конечно в css файле
Эмм, мне больше подходит вариант с файлом. Кидайте.
0
MVS76
Не мoдepaтор
339 / 314 / 94
Регистрация: 07.07.2012
Сообщений: 1,015
Записей в блоге: 7
08.08.2013, 21:26 #17
примерно вот, ну хотя я не знаю как вам нужно оформление, это вам нужно решать
PHP
1
2
3
4
5
6
7
8
9
10
11
<?php
if (!empty($_SESSION['login']) && !empty($_SESSION['id']))
{
   // Если не пусты, то мы выводим ссылку
   echo "Здравствуйте,".$_SESSION['login'];
   echo "<br><a href='logout.php' class='logout'>Выход</a>";
} else {
   echo "Здравствуйте, Гость";
   echo "<br><a href='auth.php' class='auth'>Войти</a>";
}
?>
ну и сам css
CSS
1
2
.logout{color: #2E8B57}
.auth{color: #DC143C}
Вообще вариантов полно, я даже ваш сайт не видел, как можно что-то предложить?
0
Dolor
2 / 0 / 0
Регистрация: 02.08.2013
Сообщений: 39
08.08.2013, 21:31  [ТС] #18
А как файл называть?
И это в файл кидать?
CSS
1
2
.logout{color: #2E8B57}
.auth{color: #DC143C}
0
MVS76
Не мoдepaтор
339 / 314 / 94
Регистрация: 07.07.2012
Сообщений: 1,015
Записей в блоге: 7
08.08.2013, 21:35 #19
у вас ведь есть уже любой css на странице, киньте в него.
0
Dolor
2 / 0 / 0
Регистрация: 02.08.2013
Сообщений: 39
08.08.2013, 21:38  [ТС] #20
окай
0
08.08.2013, 21:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.08.2013, 21:38

Как реализовать выход с сайта?
У меня есть админка, как ставить там кнопку, чтобы по нажатии вышли с админки...

При парсинге сайта содержание в строке выводится не на языке сайта
Здравствуйте. Помогите решить проблему. Сайт в браузере на русском. Когда я его...

Выход из функции
Привет. Есть функция. $str = &quot;Str---------ng&quot;; echo deleteMinus($str); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru