Ответить
либо через хтаццесс(ссыль на статью я кидал), либо чтобы index.php сам раскуривал что ему делать, но я так делать не советую.
Что бы не плевалось что хидеры уже посланы надо файлы сохранять в кодировке UTF-8 без ВОМ и объявлять сессию до любого вывода данных. В нотепаде++ можно сохранять в таком формате. если в другом то сервер сам посылает BOM (Byte Order Mask или как его там) и естественно после этого уже нельзя ни заголовки послать не сессию объявить, так как началась передача денных
думаю если с этим разберешся то вопрос проверки авторизации отпадет сам. Что самое интересное все начинающие программисты задают этот вопрос)))) В смысле про то что ругается на заголовки и я тоже его задавал))))
ну так правильно, на нейц и должна стоять проверка. Там тоже надо ставить
или
если это делать только на странице авторизации, то ничего не помешает человеку напрямую обратиться к закрытой странице
Общие вопросы новичков
Отправлено: 7 Окт 2010#41
Заработало... только кавычки! эх
Добавлено 2010.10.07 19-24
а как теперь проверить, залогинился ли человек?
Добавлено 2010.10.07 19-25
Пишет ошибку, мол хэдер уже был отправлен
Добавлено 2010.10.07 19-28
В плане, если он сразу перейдет на main.php
и как сделать ссылки типа:
myadress.com/admin/index.php?main - главная админки
myadress.com/admin/index.php - авторизация
Добавлено 2010.10.07 19-24
а как теперь проверить, залогинился ли человек?
Добавлено 2010.10.07 19-25
1
2
3
4
5
6
7
8
<?php session_start();
if (!empty($_SESSION['user']['id'])) // проверяем сессию (вот думаю, стоит ли приписывать isset?)
{ } // просто показываем содержимое страницы, так как юзер получил правильный ключ
else
{
header("Location: ../index.php"); // Отправляем на авторизацию
}?>
Пишет ошибку, мол хэдер уже был отправлен
Добавлено 2010.10.07 19-28
Цитата
а как теперь проверить, залогинился ли человек?
В плане, если он сразу перейдет на main.php
и как сделать ссылки типа:
myadress.com/admin/index.php?main - главная админки
myadress.com/admin/index.php - авторизация
Отправлено: 7 Окт 2010#42
Цитата
и как сделать ссылки типа:
myadress.com/admin/index.php?main - главная админки
myadress.com/admin/index.php - авторизация
myadress.com/admin/index.php?main - главная админки
myadress.com/admin/index.php - авторизация
либо через хтаццесс(ссыль на статью я кидал), либо чтобы index.php сам раскуривал что ему делать, но я так делать не советую.
Что бы не плевалось что хидеры уже посланы надо файлы сохранять в кодировке UTF-8 без ВОМ и объявлять сессию до любого вывода данных. В нотепаде++ можно сохранять в таком формате. если в другом то сервер сам посылает BOM (Byte Order Mask или как его там) и естественно после этого уже нельзя ни заголовки послать не сессию объявить, так как началась передача денных
думаю если с этим разберешся то вопрос проверки авторизации отпадет сам. Что самое интересное все начинающие программисты задают этот вопрос)))) В смысле про то что ругается на заголовки и я тоже его задавал))))
Я горжусь тем, что создал бесплатную CMS - AtomX . И люблю нашу команду)
Отправлено: 7 Окт 2010#43
Вот проверял сидел. При вводе неверных данных отправляет на индекс корневого каталога. На изменения строки не реагирует О_о
1
2
3
4
5
6
<?php else {
unset($_SESSION['user']);
header("Location: ../index.php"); // отправляем обратно на авторизацию
die();
mysql_close ($link);
}?>
Отправлено: 7 Окт 2010#44
ну а что должно происходить? этот код
отп равляет на индексный файл верхнего каталога. почему не текущего а верхнего потому что стоит "../"
так
отправит на индекс текущего каталога
а так
на корень сайта
1
2
<?php header("Location: ../index.php" ); // отправляем обратно на авторизацию?>
отп равляет на индексный файл верхнего каталога. почему не текущего а верхнего потому что стоит "../"
так
1
2
<?php header("Location: index.php"); // отправляем обратно на авторизацию?>
а так
1
2
<?php header("Location: /index.php"); // отправляем обратно на авторизацию?>
Отредактировано автором 7 Окт 2010
Я горжусь тем, что создал бесплатную CMS - AtomX . И люблю нашу команду)
Отправлено: 7 Окт 2010#45
Дело в том, что main.php находится в том же каталоге с index и на него переносит адекватно при
На изменение путей не реагирует О_о
1
2
<?php ../main.php?>
На изменение путей не реагирует О_о
Отправлено: 7 Окт 2010#46
а вот сам этот скрипт который редиректит где находиться по отношению к main.php и index.php?
Я горжусь тем, что создал бесплатную CMS - AtomX . И люблю нашу команду)
Отправлено: 8 Окт 2010#47
Вот древо:
www -
[list]
- cms
[list]
images
php
[list]
log_ad.php - скрипт обработчик формы
[/list]
index.php - форма
main.php - закрытая страница
[/list]
- .htaccess
[/list]
Добавлено 2010.10.08 10-37
www -
- cms
images
php
log_ad.php - скрипт обработчик формы
index.php - форма
main.php - закрытая страница
- .htaccess
Добавлено 2010.10.08 10-38
блин. Лак сделаем:
Добавлено 2010.10.08 10-38
Ещё спросить хотел:
А для чего нужны "скрытые" формы?
www -
[list]
- cms
[list]
images
php
[list]
log_ad.php - скрипт обработчик формы
[/list]
index.php - форма
main.php - закрытая страница
[/list]
- .htaccess
[/list]
Добавлено 2010.10.08 10-37
www -
- cms
images
php
log_ad.php - скрипт обработчик формы
index.php - форма
main.php - закрытая страница
- .htaccess
Добавлено 2010.10.08 10-38
блин. Лак сделаем:
1
2
3
4
5
6
7
8
<?php www -
- cms
images
php
log_ad.php - скрипт обработчик формы
index.php - форма
main.php - закрытая страница
- .htaccess?>
Добавлено 2010.10.08 10-38
Ещё спросить хотел:
А для чего нужны "скрытые" формы?
Отправлено: 8 Окт 2010#48
Блин надо будет что-то сделать с list ббкодом а то какойто он корявый. я им просто никогда не пользуюсь и поэтому постоянно забываю о нем.
скрытые поля нужны для того чтобы отправлять какоето значение о котором пользователь и не знает даже
ну вот судя по всему у тебя все в одной ппке а ридерект ты делаешь на верхний каталог. делай редирект согласно тому как я выше писал и все долже
но быть ОК. +если чтото непонятное происходит дампи переменные, смотри что в них в раные моменты времени и в разных местах, сразу все становится понятнее.
Добавлено 2010.10.08 12-11
http://fapos.net/forum/view_theme/96 - вот еще темка
скрытые поля нужны для того чтобы отправлять какоето значение о котором пользователь и не знает даже
ну вот судя по всему у тебя все в одной ппке а ридерект ты делаешь на верхний каталог. делай редирект согласно тому как я выше писал и все долже
но быть ОК. +если чтото непонятное происходит дампи переменные, смотри что в них в раные моменты времени и в разных местах, сразу все становится понятнее.
Добавлено 2010.10.08 12-11
Отредактировано автором 8 Окт 2010
Я горжусь тем, что создал бесплатную CMS - AtomX . И люблю нашу команду)
Отправлено: 8 Окт 2010#49
нет. ты не понял:
php - log_ad.php
index.php
main.php
Файл обработчик находится в папке
Добавлено 2010.10.08 12-59
Я посмотрел. Это:
Пропускает не верные логины и пароли на страницу закрытую, но на закрытой странице проверка сессии отправляет на главну
Добавлено 2010.10.08 13-00
Ещё вот узнать хотел, как сделать, если юзер сразу пишет в url сроке адрес закрытой страницы, что бы его оттуда выбрасывало
php - log_ad.php
index.php
main.php
Файл обработчик находится в папке
Добавлено 2010.10.08 12-59
Я посмотрел. Это:
1
2
3
4
5
6
7
8
<?php if ($q = mysql_query("SELECT * FROM `". $users_tb ."` WHERE `password`='".$_POST['password'] ."' AND `login`='".$_POST['login'] ."' LIMIT 1 ")) {
// проверяем логины и пароли
session_start();
$_SESSION['user'] = mysql_fetch_array($q); // устанавливаем ключ ID для сессии авторизованного
header("Location: ../main.php"); // отправляем на закрытую страницу
mysql_close ($link);
die();
}?>
Пропускает не верные логины и пароли на страницу закрытую, но на закрытой странице проверка сессии отправляет на главну
Добавлено 2010.10.08 13-00
Ещё вот узнать хотел, как сделать, если юзер сразу пишет в url сроке адрес закрытой страницы, что бы его оттуда выбрасывало
Отправлено: 8 Окт 2010#50
skad0 пишет:
Ещё вот узнать хотел, как сделать, если юзер сразу пишет в url сроке адрес закрытой страницы, что бы его оттуда выбрасывало
1
2
3
<?php if (empty($_SESSION['user']['id'])) {
header('location: /index.php');
}?>
или
1
2
3
<?php if ($_SESSION['user']['id'] < 3) {
header('location: /index.php');
}?>
если это делать только на странице авторизации, то ничего не помешает человеку напрямую обратиться к закрытой странице
Я горжусь тем, что создал бесплатную CMS - AtomX . И люблю нашу команду)
Зарегистрируйтесь или авторизуйтесь что бы писать
Сейчас online: 59. Зарегистрированных: 0. Гостей: 59.