ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

18.05.2008, 03:00
|
|
Познающий
Регистрация: 06.12.2006
Сообщений: 57
Провел на форуме: 418176
Репутация:
31
|
|
Isis тут даже не пользователя а скорее воткнуть человеку что да как, куда %) чтоб более понятно было
|
|
|

18.05.2008, 03:02
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
Если это админка, зачем ему что-то знать?
|
|
|

18.05.2008, 03:06
|
|
Познающий
Регистрация: 06.12.2006
Сообщений: 57
Провел на форуме: 418176
Репутация:
31
|
|
ёпт ну если б он знал как делать он бы не спрашивал......вобще как ему нужно сделать он разберётся думаю дальше, я ради примера выложил
|
|
|

18.05.2008, 03:07
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
Без "епт" , ога?
Я предложил лучший пример, насчет вывода ошибки он ничего не сказал
|
|
|

18.05.2008, 03:52
|
|
Участник форума
Регистрация: 01.03.2006
Сообщений: 169
Провел на форуме: 519496
Репутация:
78
|
|
Не работает авторизация... Вводишь нужный логин и пароль а в ответ получаешь страницу которая должна выводиться при прямом доступе к странице... и вылетает ошибка
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at F:\home\test1.ru\www\admins.php:9) in F:\home\test1.ru\www\admins.php on line 12
В чем может быть проблема?
login.php
PHP код:
<?
error_reporting (0);
session_start();
print '<form method="POST">';
print '<br/>';
print ' Login:<input type="text" name="log" title="Введите login" value="">';
print '<br/>';
print '<br />';
print 'Password:<input type="text" name="passwd" title="Введите password" value="">';
print '<br/>';
print '<br />';
print ' <input type="submit" name="sub" value=" Go! " />';
print '<br/>';
print '<br/>';
print '</form>';
$password="1";
$login="1";
if(isset($_POST['sub']))
{
$inputlogin=$_POST['log'];
$inputpassword=$_POST['passwd'];
$inputlogin=trim($inputlogin);
$inputpassword=trim($inputpassword);
if($inputpassword==$password && $inputlogin==$login)
{
$_SESSION['aut'] = TRUE;
print ("<script>document.location='admin.php';</script>\r\n");
}
else
{
echo "<font color=Red>Неправильный пароль</font>";
}
}
?>
admin.php
PHP код:
session_start();
if(isset($_SESSION['aut']))
{
print "пашет";
}
else
{
print " не пашет";
}
В ответ получаю "не пашет"
|
|
|

18.05.2008, 09:52
|
|
Banned
Регистрация: 27.08.2007
Сообщений: 159
Провел на форуме: 994336
Репутация:
171
|
|
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at F:\home\test1.ru\www\admins.php:9) in F:\home\test1.ru\www\admins.php on line 12
Такая ошибка бывает когда функции header(), setcookie() или session_start() используют где-нибудь в середине страницы. Все эти функции должны использоваться перед любым выводом html
Видно ты код admin.php просто срезал из основного кода.У меня скрипт работает и выдает "пашет".
|
|
|

18.05.2008, 10:15
|
|
Участник форума
Регистрация: 01.02.2007
Сообщений: 286
Провел на форуме: 804931
Репутация:
526
|
|
Сообщение от !{ra!{e/\/
Такая ошибка бывает когда функции header(), setcookie() или session_start() используют где-нибудь в середине страницы. Все эти функции должны использоваться перед любым выводом html
Я б даже уточнил - такая ошибка бывает когда все http-заголовки уже отосланы, и началась отсылка "тела".
Впринципе можно использовать и в середине, и где хочешь - но только тогда буферизацию использовать необходимо...
Но Zircool'у я думаю лучше пойти по пути наименьшего сопротивления, и более логичного кода 
|
|
|

18.05.2008, 14:22
|
|
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме: 4832771
Репутация:
1916
|
|
Ну вы даёте))
2 Isis
PHP код:
if(isset($_SESSION['aut']))
{
//code
}
Если $_SESSION = ''; то это условие вернёт true, лучше использовать !empty()
2 Zircool В теге input нет параметра title.
по сабжу я бы сделал так:
В файл admin.php инклудится login.php. Там производится проверка. Если сессия существует и равна нужной, то пускает в админку. если нет, то выводит форму. Заходить можно как на файл admin.php так и на файл login.php.
Вот код (проверил, всё работает)
login.php
PHP код:
<?php
session_start();
$form = <<<FORM
<form method="post">
<br/>
Login:<input type="text" name="log" />
<br/>
<br />
Password:<input type="password" name="passwd" />
<br/>
<br />
<input type="submit" name="sub" value="Go!" />
<br/>
<br/>
</form>
FORM;
$password = '1';
$login = '1';
if(isset($_POST['sub']))
{
$inputlogin = !empty($_POST['log']) ? trim($_POST['log']) : '';
$inputpassword = !empty($_POST['passwd']) ? trim($_POST['passwd']) : '';
if($inputpassword == $password && $inputlogin == $login)
{
$_SESSION['aut'] = md5($login.$password);
header('location: admin.php');
}
else
{
echo '<font color="Red">Неправильный пароль</font><br />'.$form;
}
}
elseif($_SESSION['aut'] == md5($login.$password))
{
define('ADMIN', true);
}
else
{
echo $form;
}
?>
admin.php
PHP код:
<?php
require_once('login.php');
if(!defined('ADMIN')) exit();
echo 'Админка';
?>
можно и упростить, но имхо так вполне нормально
|
|
|

19.05.2008, 02:27
|
|
Познающий
Регистрация: 06.12.2006
Сообщений: 57
Провел на форуме: 418176
Репутация:
31
|
|
2 .:EnoT:. зачем в сессию писать ещё значения потом их ещё раз перепроверять?! если логин и пароль совпал то создаётся просто сессия, а в admin.php проверяем уже на существование
PHP код:
if(isset($_SESSION['aut']))
{
//code
}
|
|
|

19.05.2008, 02:53
|
|
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
Провел на форуме: 3069349
Репутация:
808
|
|
Сообщение от .:EnoT:.
2 Zircool В теге input нет параметра title.
Параметр title разрешён у всех тегов, кроме: html, head, title, meta, base, basefont, script и param.
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|