Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.07.2011, 21:20   #1
Русtam
Пользователь
 
Регистрация: 27.06.2011
Сообщений: 60
По умолчанию Авторизация, будь она не ладна

Здравствуйте!!! Укажите пожалуйста ошибку в коде авторизации, я уже как только не перепробовал реализовывать ее, только пожалуйста не пишите свои варианты , просто покажите ошибку или то что нужно дописать в коде.

ЭТО TЗ на авторизацию :
1. Создайте главную страницу сайта index.php, которая будет неавторизованных
пользователей отправлять на страницу авторизации, а авторизованных на
страницу "А". Для пользователя
главной страницы не будет видно, она нужна только для перенаправления.

Вот такое вот задание !!! ТУТ представлен код страницы index.php который будет перенаправлять пользователей. А вообще есть еще фаил с формой которая отправляет POST данные в файл index.php и есть страница на которую нужно перенаправлять авторизованных пользователей.

PHP код:
function login($username,$remember)
{
    if(
$username == '')
        {
        
header("Location: forma.php");
        }    
    elseif(
$remember)
        {    
        
setcookie('username'$username,time()+3600);
        
$_session['username'] = $username;
        
header("Location: glavnaia.php");
        }
}
///точка входа 
session_start();
if(
count($_POST) > 0)
  {
  
login($_P0ST['username'] , $_P0ST['remember']);
  } 
Русtam вне форума Ответить с цитированием
Старый 27.07.2011, 23:14   #2
VadikV
Форумчанин
 
Аватар для VadikV
 
Регистрация: 08.01.2011
Сообщений: 226
По умолчанию

Ты проверяешь только данные, отправляемый формой авторизации:
PHP код:
if(count($_POST) > 0
а если пользователь уже авторизовался, то нужно проверять данные в $_COOKIE.

setcookie после авторизации нужно выставлять всегда. иначе как ты узнаешь что пользователь авторизовался? Это по поводу вот этого:
PHP код:
elseif($remember
Общая логика должна быть такое:
1. проверяем данные в $_POST. если есть - п.2. иначе - п.4
2. проверить авторизацию, выставить setcookie.
3. перенаправить на другую страницу.
4. проверяем данные в $_COOKIE. если есть - п.3.
5. авторизацию не прошли - вывести форму авторизации.
icq 223-630-454
e-mail vysotskiy@list.ru
сайт http://www.big-library.net/
VadikV вне форума Ответить с цитированием
Старый 27.07.2011, 23:23   #3
Русtam
Пользователь
 
Регистрация: 27.06.2011
Сообщений: 60
По умолчанию

ОГРОМНЕЙШЕЕ СПАСИБО !!!!!!
Русtam вне форума Ответить с цитированием
Старый 28.07.2011, 01:11   #4
kirosin
Форумчанин
 
Аватар для kirosin
 
Регистрация: 15.01.2010
Сообщений: 209
По умолчанию

PHP код:
login($_P0ST['username'] , $_P0ST['remember']); 
и в этом кусочке у тебя нули вместо буквы "О".
Все генитальное просто.
kirosin вне форума Ответить с цитированием
Старый 28.07.2011, 09:12   #5
Русtam
Пользователь
 
Регистрация: 27.06.2011
Сообщений: 60
По умолчанию

Как я Мог такое написать !!! НЕ БЕЙТЕ МЕНЯ СИЛЬНО !!! все произошло машинально !!!
Русtam вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двовимірні масиви!Будь-ласка --Sashok-- Помощь студентам 0 26.03.2011 16:54
Форма, будь она неладна! A_L_E_X Microsoft Office Excel 5 24.08.2010 21:22
ActionList будь он не ладен. Leo20 Компоненты Delphi 9 11.10.2009 17:46
Потрібна допомога!!!Будь-ласка Їжачок Помощь студентам 9 24.04.2008 15:40