оцените скрипт

Discussion in 'PHP' started by genom--, 24 Mar 2007.

  1. genom--

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

    Joined:
    9 Jul 2006
    Messages:
    668
    Likes Received:
    416
    Reputations:
    288
    вот накропал типо микро cms =)

    мне просто интересно мнение людей которые хорошо знают php -- сильно коряво написано ?

    скрипт просто выводит форму логин пасс -- потом позволяет добавить пост на сайт и закачать файл

    после выполнения какойлибо операции сразу возвращается к рабочей части скрипта по кукам
    PHP:
    <?
    Error_Reporting(E_ALL & ~E_NOTICE);
    if (
    $_POST['log']=='genom--' and $_POST['pass']=='logka') {
    $a=$_POST['log'];
    $b=$_POST['pass'];
    setcookie("log""$a"time()+3600);setcookie("pass""$b"time()+3600);
    dod();
    }
    elseif (
    $_COOKIE["log"]=='genom--' and $_COOKIE["pass"]=='logka'){
    if(
    $userfile){ copy($userfile"$userfile_name");echo 'Файл успешно загружен<br>';}
    if(
    $_POST['zagol'] and $_POST['text']){
    $fp fopen ("index.php""r+");
    $file=file_get_contents('index.php');
    $pos strpos($file"PERL scripts");
    $got=substr($file,0,$pos+39);
    $got.=$_POST['zagol'].$_POST['text'].'<br><br>';
    $got.=substr($file,$pos+39,strlen($file));
    fputs($fp,$got);
    echo
    'Изменения внесены =)';
    }
    dod();
    }
    else{
    echo
    '<html><b><body text="darkgreen" bgcolor="#000000" link="#green" alink="#green" vlink="#green"><br><br><center> <font color="#green">Доброго утра. Вы какимто странным и я бы даже сказал магическим образом попали в админ панель нашего мегаквадродека криминального хек портала. Но лишь избранным разрешено познать истину.<br><br></font> 
    <form enctype="multipart/form-data" action="" method="post"> Как имя твое избранный: <br>   
    <input name="log" type="text"><br>Хеш код матрицы:<br><input name="pass" type="text"><br>  
    <input type="submit" value="[Connect...]"></center>'
    ;
    }

    function 
    dod()
    {echo
    '<html><b><body text="darkgreen" bgcolor="#000000" link="#green" alink="#green" vlink="#green">----------------------------------------------------------------------------------------------------
    <form enctype="multipart/form-data" action="" method="post">
    [Загрузка файла на сервак:] <input name="userfile" type="file">  
    <input type="submit" value="[Загрузить]">
    </form>----------------------------------------------------------------------------------------------------<br>
    <form enctype="multipart/form-data" action="" method="post">
    Тупо заголовок:<br><input type="text" name="zagol" value=\'<a href="lol.txt">злое нечто</a>-->\' size="80"><br><br>Комментарий:<br><textarea class="input" id=text cols=60 rows=10 name="text">Я написал мега хрень качайте и не пукайте.</textarea><br><br><input type="submit" value="[Отпостить]">
    '
    ;
    }
    ?>
     
    #1 genom--, 24 Mar 2007
    Last edited by a moderator: 24 Mar 2007
    3 people like this.
  2. a1ex

    a1ex Banned

    Joined:
    11 Oct 2006
    Messages:
    517
    Likes Received:
    130
    Reputations:
    -13
    Где-то я это видел.....получи заслуженный плюс!;)
     
  3. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,194
    Reputations:
    252
    Плюс не поставлю ибо код безобразный.....
    PHP:
    <?php
    error_reporting
    (E_ALL & ~E_NOTICE);

    if(
    $_POST['log'] == 'genom--' && $_POST['pass'] == 'logka') {
    $a $_POST['log'];
    $b $_POST['pass'];
    setcookie('log''$a'time() + 3600);
    setcookie('pass''$b'time() + 3600);
    dod();
    } elseif(
    $_COOKIE['log'] == 'genom--' && $_COOKIE['pass'] == 'logka') {
        if(
    $userfile){
        
    copy($userfile'$userfile_name');
        echo 
    'Файл успешно загружен<br>';
        }
        if(
    $_POST['zagol'] && $_POST['text']){
        
    $fp fopen ('index.php''r+');
        
    $file file_get_contents('index.php');
        
    $pos strpos($file'PERL scripts');
        
    $got substr($file0$pos 39);
        
    $got.= $_POST['zagol'].$_POST['text'].'<br><br>';
        
    $got.= substr($file$pos 39strlen($file));
        
    fputs($fp$got);
        echo 
    'Изменения внесены =)';
        }
    dod();
    } else {
    echo
    '<html><b><body text="darkgreen" bgcolor="#000000" link="#green" alink="#green" vlink="#green"><br><br><center> <font color="#green">Доброго утра. Вы какимто странным и я бы даже сказал магическим образом попали в админ панель нашего мегаквадродека криминального хек портала. Но лишь избранным разрешено познать истину.<br><br></font>
    <form enctype="multipart/form-data" action="" method="post"> Как имя твое избранный: <br>
    <input name="log" type="text"><br>Хеш код матрицы:<br><input name="pass" type="text"><br>
    <input type="submit" value="[Connect...]"></center>'
    ;
    }

    function 
    dod(){
        echo 
    "<html>
        <head><title>Загрузка файла на сервак</title></head>
        <body text='darkgreen' bgcolor='#000000' link='#green' alink='#green' vlink='#green'>
        ----------------------------------------------------------------------------------------------------
        <form enctype='multipart/form-data' method='post'>
        [Загрузка файла на сервак:] <input name='userfile' type='file'>
        <input type='submit' value='[Загрузить]'>
        </form>
        ----------------------------------------------------------------------------------------------------<br>
        <form enctype='multipart/form-data' method='post'>
        Тупо заголовок:
        <br /><input type='text' name='zagol' value=\"<a href='lol.txt'>злое нечто</a>-->\" size='80'>
        <br /><br />Комментарий:<br />
        <textarea class='input' id='text' cols='60' rows='10' name='text'>Я написал мега хрень качайте и не пукайте.</textarea>
        <br /><br /><input type='submit' value='[Отпостить]' />
        "
    ;
        }
    ?>
    Вот красивый код !!!
    На будущее....
    1)Пхп любит одинарные кавычки и быстрее исполняет скрипт !!!
    2)Не надо жалеть пробелов........
    HTML тоже не знаешь =)
    Всегда когда идет тег, который не закрывается, он должен закрываться еще и слешем перед скобкой...
    <input size='20' />
    <br />
    <hr />
    <img src='lala.jpg' />
     
  4. Helios

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

    Joined:
    14 Jan 2007
    Messages:
    414
    Likes Received:
    180
    Reputations:
    103
    Красивый код? Сделал еще хуже

    сразу видно, что енто работать не будет как надо:
    PHP:
    setcookie('log''$a'time() + 3600); 
    setcookie('pass''$b'time() + 3600);
    ибо в куки запишется не genom-- и logka, а $a и $b соответственно.

    Почему одинарные кавычки работают быстрее? Потому что в том, что находится между ними пхп не ищет переменных, которые нужно заменить их значениями.
    А тут именно это и требовалось.

    Хотя и автор чуток ступил) Зачем заводить новые переменные, если ты и так знаешь, что в них, ибо проверил:
    PHP:
    if($_POST['log'] == 'genom--' && $_POST['pass'] == 'logka')
    Тогда уж пусть будет
    PHP:
    setcookie('log'$_POST['log'], time() + 3600); 
    setcookie('pass'$_POST['pass'], time() + 3600);
    или еще быстрее:
    PHP:
    setcookie('log''genom--'time() + 3600); 
    setcookie('pass''logka'time() + 3600);
    Еще одно но:
    попробуй вместо логина и пасса указать 0, и... о чудо: тебя пропустит вовнутрь.
    Дело в том, что при сравнении числа и строки в ПХП строка будет приведена к типу int и ее зачение всегда будет равно 0. Таким образом 0 == 0 и такая проверка идет лесом((

    Таким багом страдали старые версии phpBB.
    Избавление от бага: заменить == на ===, которое сравнивает помимо значения еще и тип переменной.
     
    2 people like this.
  5. r0

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

    Joined:
    17 Jul 2005
    Messages:
    450
    Likes Received:
    149
    Reputations:
    147
    HTML этого не предполагает . HTML который имеется - г"вно которое корретировали под себя Нетскейп и Мелкософт. Все закрытые теги - это стандарт языка, т.е. xhtml
     
    1 person likes this.
  6. Abra

    Abra Member

    Joined:
    17 Sep 2005
    Messages:
    278
    Likes Received:
    51
    Reputations:
    29
    +1. Потому что при виде корявой стилистики кода отпало всякое желание его разбирать =\
     
  7. genom--

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

    Joined:
    9 Jul 2006
    Messages:
    668
    Likes Received:
    416
    Reputations:
    288
    незнаю что вам видно но это работает и в куки пишется все что надо =)

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

    вот за это спасибо это я не знал