Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: как по средствам php зайти в админку, где сначала требуется ввести логин а потом пароль.
 
 автор: AlexDIXI   (30.06.2008 в 05:43)   письмо автору
 
 

Привет..
Есть проблема, не понимаю как реализовать вход в админку, где сначала нужно ввести логин а потом пароль :(? И что б можно было ходить в админке и делать там свои дела :)

   
 
 автор: cheops   (30.06.2008 в 09:17)   письмо автору
 
   для: AlexDIXI   (30.06.2008 в 05:43)
 

Какой метод входа используется? Это Web-интерфейс или basic-аутентификация?

   
 
 автор: AlexDIXI   (30.06.2008 в 18:51)   письмо автору
 
   для: cheops   (30.06.2008 в 09:17)
 

Это Web-интерфейс, например надо осуществить вход, на mail.ru и пройти в раздел, "входящие", ну и т.п.

   
 
 автор: sparhok13   (30.06.2008 в 22:48)   письмо автору
 
   для: AlexDIXI   (30.06.2008 в 18:51)
 

Создай файл с таким содержимым и подключай его к файлам которые должны быть под паролем (толко данные в базе замени на свои. Где: tablica - имя таблицы и два поля - pass и user. В поле pass - пароль, а в поле user - имя пользователя :)) )

<?php

if (!isset($_SERVER['PHP_AUTH_USER']))

{
        
Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
        
Header ("HTTP/1.0 401 Unauthorized");
        exit();
}

else {
        if (!
get_magic_quotes_gpc()) {
                
$_SERVER['PHP_AUTH_USER'] = mysql_escape_string($_SERVER['PHP_AUTH_USER']);
                
$_SERVER['PHP_AUTH_PW'] = mysql_escape_string($_SERVER['PHP_AUTH_PW']);
        }

        
$query "SELECT pass FROM tablica WHERE user='".$_SERVER['PHP_AUTH_USER']."'";
        
$lst = @mysql_query($query);

        if (!
$lst)
        {
            
Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
        
Header ("HTTP/1.0 401 Unauthorized");
        exit();
        }

        if (
mysql_num_rows($lst) == 0)
        {
           
Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
           
Header ("HTTP/1.0 401 Unauthorized");
           exit();
        }

        
$pass =  @mysql_fetch_array($lst);
        if (
$_SERVER['PHP_AUTH_PW']!= $pass['pass'])
        {
            
Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
           
Header ("HTTP/1.0 401 Unauthorized");
           exit();
        }


}

?>

   
 
 автор: AlexDIXI   (30.06.2008 в 23:21)   письмо автору
 
   для: sparhok13   (30.06.2008 в 22:48)
 

Да это не то :)) Спасибо за код авторизации.. Но я прошу каким кодом php'шным можно войти на mail.ru т.е. вводим логин и пароль. потом попадаем в "входящие" и копируем страницу функцией file_get_contents.

   
 
 автор: Loneliness   (30.06.2008 в 23:51)   письмо автору
 
   для: AlexDIXI   (30.06.2008 в 23:21)
 

Разбирать форму авторизации,отправлять ее сокетами или CURL и получать ответ. Про сокеты на форуме много чего имеется, поиск поможет.

   
 
 автор: AlexDIXI   (01.07.2008 в 00:02)   письмо автору
 
   для: Loneliness   (30.06.2008 в 23:51)
 

Спасибо. Но я не сталкивался с этим. если бы л бы пример кода, то я бы понял...

А так рыскать, думаю что ничего не получится.. помогите с кодом..

Спасибо!

   
 
 автор: AcidTrash   (01.07.2008 в 09:43)   письмо автору
 
   для: AlexDIXI   (30.06.2008 в 23:21)
 

<?
$url 
"http://win.mail.ru/cgi-bin/auth";
$post "Login=asidtrash&Domain=mail.ru&Password=password";

$cookie str_replace('\\''/'dirname(__FILE__)) . 'cookies.txt';
$ch curl_init();
curl_setopt($chCURLOPT_URL,$url);
curl_setopt($chCURLOPT_FAILONERROR1);
curl_setopt($chCURLOPT_FOLLOWLOCATION1);
curl_setopt($chCURLOPT_RETURNTRANSFER,1);
curl_setopt($chCURLOPT_TIMEOUT3);
curl_setopt($chCURLOPT_POST1);
curl_setopt($chCURLOPT_POSTFIELDS$post);
curl_setopt($chCURLOPT_COOKIEFILE$cookie);
curl_setopt($chCURLOPT_COOKIEJAR$cookie);
curl_setopt($chCURLOPT_NOBODY0);
curl_setopt($chCURLOPT_HEADER0);
$result curl_exec($ch);
curl_close($ch);
header("Location: http://win.mail.ru/cgi-bin/msglist?folder=0");

?>

   
 
 автор: Эй   (01.07.2008 в 09:51)   письмо автору
 
   для: AcidTrash   (01.07.2008 в 09:43)
 

А эта строчка к чему?

header("Location: http://win.mail.ru/cgi-bin/msglist?folder=0");

   
 
 автор: AcidTrash   (01.07.2008 в 09:58)   письмо автору
 
   для: Эй   (01.07.2008 в 09:51)
 

Редирект на папку "входящие".

   
 
 автор: Эй   (01.07.2008 в 10:07)   письмо автору
 
   для: AcidTrash   (01.07.2008 в 09:58)
 

Авторизацию проходит сервер, а не клиентский браузер.

   
 
 автор: AlexDIXI   (02.07.2008 в 14:14)   письмо автору
 
   для: AcidTrash   (01.07.2008 в 09:43)
 

Вот и как добавить чтоб скрипт перенес в переменную $content страницу входящие?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования