X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Пароль на страницу, Скрипт пароля на просмотр страницы...
toorr2p
toorr2p
Topic Starter сообщение 16.4.2009, 3:41; Ответить: toorr2p
Сообщение #1


Хочу на страницу поставить пароль, чтоб был вход по паролю...

нашел вот этот скрипт скрипт

Объясните как нужно его оптимизировать?

я в строке
$LOGIN[/quote] и [quote]$PASSWORD[/quote] поставил вот так
[quote]$LOGIN = "admin";
$PASSWORD = "admin";

Вызываю скрипт ...появляется страница с окном для ввода лог и пароля...ввожу в оба поля 'admin' страница перезагружается и ничего не происходит!!! :) не пойму что и как подскажите, я только начинаю изучать PHP.

Код скрипта:
<?php
/******************************************************************************\
* Simple Page Protect Version 1.0 *
* Copyright 2000 Frederic TYNDIUK (FTLS) All Rights Reserved. *
* E-Mail: tyndiuk@ftls.org Script License: GPL *
* Created 02/28/2000 Last Modified 02/28/2000 *
* Scripts Archive at: [url="http://www.ftls.org/php/"]http://www.ftls.org/php/[/url] *
*******************************************************************************/
/*******************************************************************************/
// Necessary Variables:

$LOGIN = "admin";
$PASSWORD = "admin";
// En: login /password
// Fr: login / mots de passe

// End Necessary Variables section
/******************************************************************************/

function error ($error_message) {
echo $error_message."<BR>";
exit;
}

if ( (!isset($PHP_AUTH_USER)) || ! (($PHP_AUTH_USER == $LOGIN) && ( $PHP_AUTH_PW == "$PASSWORD" )) ) {
header("WWW-Authenticate: Basic entrer=\"Form2txt admin\"");
header("HTTP/1.0 401 Unauthorized");
error("Unauthorized access...");
}
else
{
echo "<table width='200'>
<th>Новый заказ</th>
<tr><td><p>Oрганизация</p><div class='dann'>$organization</div> </td></tr>
<tr><td><p>Контактное лицо</p><div class='dann'>$lico</div></td></tr>
<tr><td><p>Суть заказа</p><div class='dann'>$czakaz</div></td></tr>
<tr><td><p>Фото</p><div class='dann'>$foto</div></td></tr>
<tr><td><p>Контактный телефон</p><div class='dann'>$phon</div></td></tr>
</table>";
}
?>


<HTML><HEAD><TITLE>Your protected page</TITLE></HEAD>
<BODY BGCOLOR="white">
<BR><BR><P ALIGN="Center"><FONT FACE="Arial, helvetica" SIZE="+2" COLOR="#336699"><STRONG><EM>Your protected page</EM></STRONG></FONT></P><BR>

<BR><BR><BR><BR><BR><BR><BR><BR>

<CENTER><BR><BR>
<FONT FACE="Arial" SIZE=-2>
<EM>&copy Copyright 2000 <A HREF="http://www.ftls.org/">FTLS</A> (Tyndiuk Fr&eacute;d&eacute;ric). All rights reserved.
<BR>FTLS's PHP Scripts Archive : <A HREF="http://www.ftls.org/php/">http://www.ftls.org/php/</A></EM></FONT>
</CENTER></BODY></HTML>

0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 16.4.2009, 10:16; Ответить: ZiTosS
Сообщение #2


Вячеслав, ничего сложного. Просто ты работаешь в режиме register_globals=On
Тебе нужно заменить
$PHP_AUTH_USER => $_SERVER['PHP_AUTH_USER']
$PHP_AUTH_PW => $_SERVER['PHP_AUTH_PW']

B)

А вообще советую научиться работать с БД. И тогда можно будет разграничивать доступ к странице для различных пользователей, и там будет не один логин и пароль, а у каждого свой :)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
toorr2p
toorr2p
Topic Starter сообщение 16.4.2009, 14:16; Ответить: toorr2p
Сообщение #3


спасибо! попробую.
кстати сейчас уже дошел до соединения с БД и выводом из нее данных(в цикле).
А по поводу этого скрипта у меня подозрения по поводу безопасности...
ЧТО МОЖЕТЕ ПОДСКАЗАТЬ ПО ЭТОМУ ПОВОДУ?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 16.4.2009, 21:03; Ответить: ZiTosS
Сообщение #4


По поводу безопасности? И что же тебя смущает?
Безопасность тут ничем не хуже чем в соединении с базой и не нужно хранить сессии. Это HTTP-авторизация, данные которые ты ввёл запоминаются на сервере, и пока ты не закроешь браузер, они там хранятся.
Но я советую лучше написать свой модуль регистрации и авторизации через сессии. Не забывай, что в базе лучше хранить хеш паролей в формате md5. И сравнивать именно хеши. Прямы пароли в базе не хранят, иначе одна качественная инъекция в БД и твои данные всем известны.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Robot-sgibatel
Robot-sgibatel
сообщение 16.4.2009, 21:19; Ответить: Robot-sgibatel
Сообщение #5


Говорят, надежнее всего как-то через .htpasswd и .htacess пароль задать
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 16.4.2009, 21:26; Ответить: ZiTosS
Сообщение #6


Bender, можно и как вы говорите
http://www.softtime.ru/info/articlephp.php?id_article=27

Но это только паролирование папок на доступ. К работе с нормальной CMS такой подход некрасивый...
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Robot-sgibatel
Robot-sgibatel
сообщение 17.4.2009, 9:24; Ответить: Robot-sgibatel
Сообщение #7


Но это только паролирование папок на доступ.

Через это можно и файл закрыть паролем, читал где-то phpbbguru.net что так нужно закрывать в phpbb файл модерирование modcp.php, но у меня это не получилось... Кстати пароль на папку можно поставить на хостингах с direct admin, прямо через нее.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Troy_mw
Troy_mw
сообщение 17.4.2009, 18:02; Ответить: Troy_mw
Сообщение #8


MySQL рулит ! остальное для мазахистов
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
toorr2p
toorr2p
Topic Starter сообщение 23.4.2009, 4:29; Ответить: toorr2p
Сообщение #9


Для установки пароля на страницу решил использовать скрипт которй подключается на страницу чз
include ("lock.php");
.
Подскажите пожалуста почему выводится ошибка?

Parse error: syntax error, unexpected T_STRING in W:\home\localhost\www\php\admin\lock.php on line 6

Шестая строка получается здесь:
{
Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
Header ("HTTP/1.0 401 Unauthorized");

exit();
}

Как ее правильно написать?
<?php
include ("bloks/bd.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 userlist 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();
}


}




?>

Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 23.4.2009, 8:44; Ответить: ZiTosS
Сообщение #10


<?php
include ("bloks/bd.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 * FROM userlist WHERE user='{$_SERVER['PHP_AUTH_USER']}' AND pass='{$_SERVER['PHP_AUTH_PW']}' LIMIT 1";
   $resource = mysql_query($query) or die("");

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

?>
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Зачем перед лендингом ставят промежуточную страницу?
0 Boymaster 296 Вчера, 23:58
автор: Boymaster
Открытая тема (нет новых ответов) Залить html страницу на 20 доменов
6 TABAK 1705 22.5.2023, 16:24
автор: KORUP
Открытая тема (нет новых ответов) Продам страницу в фейсбук - 30к подписчиков
6 wartes 1210 14.11.2020, 2:33
автор: Progernaut
Открытая тема (нет новых ответов) InstaPage создать страницу
1 Smile3D 2783 31.10.2018, 18:49
автор: Intuit89
Открытая тема (нет новых ответов) Нужен человек для продвижения в ФБ бизнес страницу
0 Smile3D 2629 17.10.2018, 19:51
автор: Smile3D


 



RSS Текстовая версия Сейчас: 20.4.2024, 18:27
Дизайн