[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Страница с ограниченным доступом
strannic
Подскажите как создать страницу с доступом только по паролю и логину. Без регистрации вхот запрещен.



Спустя 2 минуты, 52 секунды (13.03.2010 - 17:29) KaFw написал(а):
blink.gif
Зарегистрировался, записал переменную в куку,
зашел на нужную страницу, скрипт проверил есть ли у тебя эта переменная в куке, если да то доступ открыть если не то закрыть

Спустя 1 минута, 25 секунд (13.03.2010 - 17:30) qpayct написал(а):
ну и так для карсоты словца канеш, уровень доступа тож может быть разным....

Спустя 6 часов, 27 минут, 14 секунд (13.03.2010 - 23:57) strannic написал(а):
Хотелось бы, что бы узнав адрес ссылки гость не смог зайти без регистрации.
может что то есть готовое . Где можно посмотреть?
Типа как юр кабинет на этом сайте www.eu-taxi.ru только там будет форма для предложений.

Спустя 12 минут, 3 секунды (14.03.2010 - 00:10) KaFw написал(а):
даже если пользователь узнает адрес ссылки он не сможет прочитать скрытый контент

Спустя 12 минут, 4 секунды (14.03.2010 - 00:22) qpayct написал(а):
тебе надо понять, что такое куки и сессии и как они работают

Спустя 24 минуты, 21 секунда (14.03.2010 - 00:46) KaFw написал(а):
Возьмем код с ирбисовских манулов

<?php

start_session();
// Инициализация переменных
$user_login = !empty($_POST['user_login'])?$_POST['user_login']:NULL;
$user_password = !empty($_POST['user_password'])?$_POST['user_password']:NULL;

// Устанавливаем логин - пароль
$login = 'Иванов';
$password = 'Ракета';

// Проверка
if($login === $user_login && $password === $user_password)
$_SESSION['go']='ok'; echo 'Проходи';
else
echo 'Стой, стрелять буду!';

if (isset($_SESSION['go']))
{
echo 'Это запрещенный контент который верен при правbльной авторизации';
}
?>
<form action="" method="post">
Логин <input name="user_login" type="text"><br>
Пароль <input name="user_password" type="password"><br>
<
input name="ok" type="submit" value="Тук-тук">
</
form>


Пример не проверял

Спустя 20 минут, 9 секунд (14.03.2010 - 01:06) strannic написал(а):
А когда зарегистрированных несколько человек? И как спрятать нужный контент на странице?

Спустя 2 минуты, 44 секунды (14.03.2010 - 01:09) strannic написал(а):
При таком раскладе если указать в форме адрес скрипта, как потом перенаправить на страницу?

Спустя 55 минут, 45 секунд (14.03.2010 - 02:05) ApuktaChehov написал(а):
Не понимаю, в чем вопрос:

Если нужно что бы без регистрации ничего не показывалось, то тут уже ответили.
А если нужно что бы каждому юзеру показывалась его личная информация, то это делается элементарно.

if($login == 'Иванов')
{
echo('Ты Иванов');
}else if($login == 'Петров')
{
echo('Ты Пертов');
}else
{
echo('Ты кто?');
}

Спустя 12 часов, 53 минуты, 26 секунд (14.03.2010 - 14:58) KaFw написал(а):
strannic
Если хочешь нормальный сайт без лишнего гемара то используй CMS, если же тебе нужна определенная функциональность то учи php

Спустя 22 часа, 31 минута, 39 секунд (15.03.2010 - 13:30) strannic написал(а):
Не подскажете где можно почитать, что нибудь на эту тему. Хочется понять схематично общую схему создания этих ссесий, работы с куком.

Спустя 14 минут, 6 секунд (15.03.2010 - 13:44) DedMorozzz написал(а):

Спустя 1 час, 40 минут, 58 секунд (15.03.2010 - 15:25) Игорь_Vasinsky написал(а):
Сессии очень удобны, ты можешь один раз сохранить переменные (скока угодно) и использовать их пока пользователь не закроет страницу или ты сам не сотрёшь их.

Если будешь исползовать сессии то запомни:

В каждой страницы где хочешь использовать сессии ты должен вписать код запуска сессии:

<?php
session_start();


но только запомни что эта функция должна быть записана самой первой и до неё ни каких записей и не каких пустых строчек. Даже если у тя вверху страницы html код, то запустить сессии можно:

<?php
session_start();
?>


Простой пример:

У тебя на сайте пользователь зарегистрировался или авторизировался путём заполнения формы где есть поле ввода "Ваш логин" (c name='login'), как сохранить в сессии этот логин:

Будем считать что ты использовал метод "POST":

<?
session_start();
if(empty($_POST['login'])){echo "Вы не ввели ваш логин!";}
else {
$login = $_POST['login'];
session_register('login'); // обрати внимание что значок $ не используем, логин записан в сессию login
}
?>


До этого разумеется будем счить что всё нужное с $_POST['login'] - для безопасности ты проделал


Теперь на любой страницы где ты хочешь удивить его и назвать по логину, то
нэта страницы должна начинаться с кода:

<?php
session_start();
?>


и там где ты хочешь его назвать по логину:

if (empty($_SESSION['login'])){$login = "Гость";} //Проверим вдруг сессия пуста
esle {$login = $_SESSION['login'];} //переменная $login приняла значение сессии login


можно использовать и $_SESSION['login'], просто я привык придавать значении переменной;

Если посетитель уходит из аккаунт, скажем по ссылке "Выход" и хочет остаться на сайте, то сессию (или несколько его сессий) необходимо стереть:
для этого на странице "выход" надо написать

<?php
session_start();
session_destroy (); // уничтожает все открытые сессии для этого юзера
?>


session_unregister('login') // удалит только $_SESSION['login'];

всё сессия $_SESSION['login'] - стёрта

На страницах авторизации ещё удопно использовать session_id(); но это отдельная история

Спустя 9 минут, 43 секунды (15.03.2010 - 15:34) Игорь_Vasinsky написал(а):
Coockie - вообще создаются у клиента на компьютере, и хранять что угодно: логин пароль дату входа на сайт и т.д. используются в основном для того чтобы лишний раз не парить посетителя авторизацией или запомнить его выбор, а также можно установить ВРЕМЯ работы этих куки, потом они сами удаляться
Быстрый ответ:

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