|
|
|
| Надо сделать Админ зону, но при условии , что куки нет. Пробывал через session получаеться чушь какая-то =(
А мне что-то не хочеться делать каждый раз запрос к бд. | |
|
|
|
|
|
|
|
для: Akira
(18.11.2004 в 11:41)
| | Самое простое по моему - запоролить всё средствами Apache.
http://www.softtime.ru/info/articlephp.php?id_article=27 | |
|
|
|
|
|
|
|
для: cheops
(18.11.2004 в 11:55)
| | не все так просто =( я ведь не для нормального и-нета делаю а для wap.
Поэтому приходиться учитывать некоторые нюансы.
Так , что Апач мне не подходит. | |
|
|
|
|
|
|
|
для: Akira
(18.11.2004 в 12:13)
| | А к номеру телефона нельзя никак привязаться - это было бы идеальное решение?
Вон в соседних темах sedek в MASTER-Beeline к нику привязывает администрирование, если решать эту проблему средствами PHP к базе придётся обращаться и наверное придётся делать всё-таки через сессии - так как они не зависят от клиента... | |
|
|
|
|
|
|
|
для: cheops
(18.11.2004 в 12:20)
| | Самое интересное , что не как нельзя =( (если ты не связан с компанией).
Ай-пи одинаков разное только подключение к слоту, но он меняеться при каждой загрузке или перезагрузки страницы.
Через сессии
Auth
<?
include 'config.php';
$query = "SELECT count(*) FROM admins WHERE 1 AND name = '".$login."' AND password = '".$pass."';";
if (!$query) echo mysql_error();
$result = mysql_query($query);
if (!$result) echo mysql_error();
$ra = mysql_fetch_array($result);
if (!$ra) echo mysql_error();
$answer = $ra ['count(*)'];
if (!$answer) echo mysql_error();
if ($answer == 1)
{
session_start();
$_SESSION['id'] = session_id();
?>
Все ОК <br><a href="step1.php">Дальше</a>
<?
}
else
{
echo 'Этого не может быть!';
}
?>
|
Но у меня твориться что-то не ладное =(
Даже если я не проходил авторизацию меня пускает на страницу.
Step1
<?
session_start();
if ($PHPSESSID == $id) echo 'Ты зашел назащищенную страницу!<br><a href="news/">Дальше</a>';
elseif (empty($id)) echo 'Прочь!';
else echo 'Прочь!';
?>
|
News
<?
session_start();
if ($PHPSESSID == $id) echo 'Ты зашел назащищенную страницу Новостей!!<br><a href="../destroy.php">Выход</a>';
elseif (empty($id)) echo 'Прочь!';
else echo 'Прочь!';
?>
|
При этом заходя на destroy.php
если перейти на step1 то выведет Ты зашел назащищенную страницу!,
а если перейти к news то появиться Прочь! , что конечно закономерно.
Я не как не пойму , как еще можно с помощью session это сделать? | |
|
|
|
|
|
|
|
для: Akira
(18.11.2004 в 12:36)
| | Если посетитель зашёл на сайт, то результат возвращамый функцией session_id() будет одинаков, пока он не закончит сессию... Т.е. следует сделать так
<?
session_start();
if ($_SESSION['id'] == session_id()) echo 'Ты зашел назащищенную страницу!<br><a href="news/">Дальше</a>';
elseif (empty($_SESSION['id'])) echo 'Прочь!';
else echo 'Прочь!';
?>
|
При переходе на news значение сессии $_SESSION['id'] должно сохраняться. | |
|
|
|
|
|
|
|
для: cheops
(18.11.2004 в 15:24)
| | А разве $PHPSESSID не одно и тоже что и session_id() ? | |
|
|
|
|
|
|
|
для: Akira
(18.11.2004 в 17:49)
| | В общем да, кроме того что session_id() позволяет задать собственный id сессии. | |
|
|
|
|
|
|
|
для: cheops
(18.11.2004 в 19:30)
| | Я к тому , что стоит ли создовать переменную которая у нас уже есть?
Я ведь заметил что $PHPSESID автоматом переходит по ссылке...
<?
session_start();
if ($PHPSESSID == $id) echo 'Ты зашел назащищенную страницу!<br><a href="news/">Дальше</a>';
elseif (empty($id)) echo 'Прочь!';
else echo 'Прочь!';
?>
|
По-моему листинг индентичный Вашему, я прав?
<?
session_start();
if ($_SESSION['id'] == session_id()) echo 'Ты зашел назащищенную страницу!<br><a href="news/">Дальше</a>';
elseif (empty($_SESSION['id'])) echo 'Прочь!';
else echo 'Прочь!';
?>
|
| |
|
|
|
|
|
|
|
для: Akira
(18.11.2004 в 20:19)
| | Да :) я не люблю пользоваться $PHPSESSID :))) - о том и речь, что у вас должно всё работать... | |
|
|
|
|
|
|
|
для: cheops
(18.11.2004 в 20:43)
| | =) тогда понятно =) Вообщем написал я =) Вроде работает =)) | |
|
|
|