ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование_OLD > PHP, PERL, MySQL, JavaScript
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #3121  
Старый 18.05.2008, 03:00
vizard-06
Познающий
Регистрация: 06.12.2006
Сообщений: 57
Провел на форуме:
418176

Репутация: 31
По умолчанию

Isis тут даже не пользователя а скорее воткнуть человеку что да как, куда %) чтоб более понятно было
 

  #3122  
Старый 18.05.2008, 03:02
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме:
16641028

Репутация: 2371


По умолчанию

Если это админка, зачем ему что-то знать?
 

  #3123  
Старый 18.05.2008, 03:06
vizard-06
Познающий
Регистрация: 06.12.2006
Сообщений: 57
Провел на форуме:
418176

Репутация: 31
По умолчанию

ёпт ну если б он знал как делать он бы не спрашивал......вобще как ему нужно сделать он разберётся думаю дальше, я ради примера выложил
 

  #3124  
Старый 18.05.2008, 03:07
Isis
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме:
16641028

Репутация: 2371


По умолчанию

Без "епт" , ога?
Я предложил лучший пример, насчет вывода ошибки он ничего не сказал
 

  #3125  
Старый 18.05.2008, 03:52
Zircool
Участник форума
Регистрация: 01.03.2006
Сообщений: 169
Провел на форуме:
519496

Репутация: 78
Отправить сообщение для Zircool с помощью ICQ
По умолчанию

Не работает авторизация... Вводишь нужный логин и пароль а в ответ получаешь страницу которая должна выводиться при прямом доступе к странице... и вылетает ошибка

Цитата:
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 
'&nbsp; &nbsp; &nbsp; 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 
'&nbsp; &nbsp; &nbsp; <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 
" не пашет";
    } 
В ответ получаю "не пашет"
 

  #3126  
Старый 18.05.2008, 09:52
!{ra!{e/\/
Banned
Регистрация: 27.08.2007
Сообщений: 159
Провел на форуме:
994336

Репутация: 171
Отправить сообщение для !{ra!{e/\/ с помощью ICQ
По умолчанию

Цитата:
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 просто срезал из основного кода.У меня скрипт работает и выдает "пашет".
 

  #3127  
Старый 18.05.2008, 10:15
VDShark
Участник форума
Регистрация: 01.02.2007
Сообщений: 286
Провел на форуме:
804931

Репутация: 526
По умолчанию

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

  #3128  
Старый 18.05.2008, 14:22
.:EnoT:.
Постоянный
Регистрация: 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/>
&nbsp; &nbsp; &nbsp; Login:<input type="text" name="log" />
<br/>
<br />
Password:<input type="password"  name="passwd" />
<br/>
<br />
&nbsp; &nbsp; &nbsp; <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 
'Админка';
?>
можно и упростить, но имхо так вполне нормально
 

  #3129  
Старый 19.05.2008, 02:27
vizard-06
Познающий
Регистрация: 06.12.2006
Сообщений: 57
Провел на форуме:
418176

Репутация: 31
По умолчанию

2 .:EnoT:. зачем в сессию писать ещё значения потом их ещё раз перепроверять?! если логин и пароль совпал то создаётся просто сессия, а в admin.php проверяем уже на существование

PHP код:
 if(isset($_SESSION['aut'])) 

//code 

 

  #3130  
Старый 19.05.2008, 02:53
astrologer
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
Провел на форуме:
3069349

Репутация: 808


По умолчанию

Цитата:
Сообщение от .:EnoT:.  
2 Zircool В теге input нет параметра title.
Параметр title разрешён у всех тегов, кроме: html, head, title, meta, base, basefont, script и param.
 
 





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ