1. PHP / Говнокод #9682

    +161

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    $ctime = sprintf("%04d%02d%02d%02d%02d%02d",
    					date ("Y",
    					    mktime (date("s"),
    						date("i"),
    						date("H"),
    						date("m"),
    						date("d"),
    						date("Y")
    					    )
    					),
    					date ("m",
    					    mktime (date("H"),
    						date("i"),
    						date("s"),
    						date("m"),
    						date("d"),
    						date("Y")
    					    )
    					),
    					date ("d",
    					    mktime (date("H"),
    						date("i"),
    						date("s"),
    						date("m"),
    						date("d"),
    						date("Y")
    					    )
    					),
    					date ("H",
    					    mktime (date("H"),
    						date("i"),
    						date("s"),
    						date("m"),
    						date("d"),
    						date("Y")
    					    )
    					),
    					date ("i",
    					    mktime (date("H"),
    						date("i"),
    						date("s"),
    						date("m"),
    						date("d"),
    						date("Y")
    					    )
    					),
    					date ("s",
    					    mktime (date("H"),
    						date("i"),
    						date("s"),
    						date("m"),
    						date("d"),
    						date("Y")
    					    )
    					)
    				    );

    limmenz, 15 Марта 2012

    Комментарии (3)
  2. C++ / Говнокод #9681

    +1002

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    template<class _CharType>
    bool check_arith(const _CharType* str)
    {
       for(; *str ; ++str)
          for(unsigned long long j = 0x6165696F7579ull; j; j >>= 8)
            if(((j & 0xFF) | 0x20) == (*str | 0x20))
               return true;
       return false; 
    }

    Функция, которая проверяет, есть ли в слове гласные буквы латинского алфавита с учетом регистра.

    gooseim, 15 Марта 2012

    Комментарии (48)
  3. C++ / Говнокод #9680

    +149

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    #include <iostream>
    #define caseop(op, code) case op: code; break;
    #define clamp(a, lo, hi) (a < lo) ? (a = lo) : (a > hi) ? (a = hi) : a;
    void main(int argc, char* args[]) {
    	FILE *srcfile = fopen(argc > 1 ? args[1] : "", "r");
    	(!srcfile) ? exit(0) : fseek(srcfile, 0, SEEK_END);
    	unsigned char bytes[1024], *byte = bytes;
    	int x = ftell(srcfile), bs = sizeof(bytes);
    	rewind(srcfile);
    	char *source = new char[x + 1], *token = source, *ret = token;
    	fread(source, sizeof(char), x, srcfile);
    	memset(&bytes, source[x] = (char)fclose(srcfile), bs--);
    	do { 
    		switch(*token) {
    			caseop('+', ++(*byte));
    			caseop('-', --(*byte));
    			caseop('.', std::cout << *byte);
    			caseop(':', std::cout << (int)*byte);
    			caseop(',', std::cin >> *byte);
    			caseop('>', clamp(++byte, bytes, &bytes[bs]));
    			caseop('<', clamp(--byte, bytes, &bytes[bs]));
    			caseop('[', if (*byte == (x = 1) - 1) while ((*token++) && (x += *token == '[' ? 1 : *token == ']' ? -1 : 0)); else ret = token);
    			caseop(']', if (*byte) token = ret);
    		}
    	} while(*token++);
    	delete source;
    }

    Интерпретатор брэинфака

    hexman, 14 Марта 2012

    Комментарии (1)
  4. PHP / Говнокод #9679

    +149

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    <?PHP 
    ##### ПРОВЕРКА ДАННЫХ #####
    $admin=0;
    //тут может быть еще что-нибудь предварительное
    $admin=$_REQUEST['admin'];
    if($admin)
    {
       //..функционал админа
    }
    else
    {
       //что-то еще
    }
    
    
    ##### АВТОРИЗАЦИЯ #####
     
    $login=$_POST['login'];
    $password=$_POST['password'];
    //предполагаем соединение с БД установленным
    $result=mysql_query("SELECT user_id FROM users WHERE login=$login AND password=$password");
    if(mysql_num_rows($result))
    {
       //все хорошо - пользователь найден, выполняем процедуру его логина
    }
    else
    {
       //какая-то ошибка для пользователя
    }
    ?>

    Примеры "супер" безопасности с того же PHP.su

    Julike, 14 Марта 2012

    Комментарии (1)
  5. PHP / Говнокод #9678

    +154

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    <?php
    // Выводим HTML-заголовки:
    echo '<html>';
    echo '<head>';
    echo '<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">';
    echo '<title>Test Form PHP.SU</title>';
    echo '</head>';
    echo '<body>';
    echo '<h3>Тестовая форма</h3>';
    echo "<p>Переданное значение текстового поля: <b>".$_POST['textfield']."</b></p>";
    echo "<p>Переданное значение поля пароля: <b>".$_POST['pswfield']."</b></p>";
    echo "<p>Переданное значение скрытого поля hidden: <b>".$_POST['hidden']."</b></p>";
    echo '<hr size="1">';
    echo '<p>Были включены следующие независимые переключатели: </p>';
    if (isset($_POST['checkbox1'])) echo "<p><b>Первый</b></p>";
    if (isset($_POST['checkbox2'])) echo "<p><b>Второй</b></p>";
    if (isset($_POST['checkbox3'])) echo "<p><b>Третий</b></p>";
    echo '<hr size="1">';
    
    if (isset($_POST['radiobutton']))
    {
    echo '<p>Был выбран независимый переключатель со следующим значением: ';
    if ($_POST['radiobutton']==="yes") echo "<b>Yes</b>";
    if ($_POST['radiobutton']==="no") echo "<b>No</b>";
    echo '</p>';
    }
    else echo '<p>Ни один из независимых переключателей не был выбран</p>';
    echo '<hr size="1">';
    echo '<p>Значение многострочного текстового поля :</p>';
    echo "<p><b>".$_POST['textarea']."</b></p>";
    echo '<hr size="1">';
    echo "<p>Значение списка с единственным выбором: <b>".$_POST['day_s']."</b></p>";
    echo '<hr size="1">';
    echo '<p>Значения списка с множественным выбором: </p>';
    foreach ($_POST['day_m'] as $keys=>$values) echo "<b>$values</b><br>";
    echo '<hr size="1">';
    echo '<p>&copy;&nbsp;2005 <a href="http://php.su">PHP.SU</a></p>';
    echo '</body>';
    echo '</html>';
    ?>

    Пример работы с формами с сайта PHP.SU

    Julike, 14 Марта 2012

    Комментарии (0)
  6. PHP / Говнокод #9677

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    class store_mod_multi_ftp extends store_mod_ftp {
        public function __construct($options) {
            //...
        }
        protected function connect($url, $login) {
            parent::__construct($url, $login);
        }
        //...
    }

    ФТП-мод, который умеет стягивать файлы с разных серверов сразу, в отличие от своего родителя. И ведь работает, зараза!

    Lowezar, 14 Марта 2012

    Комментарии (4)
  7. PHP / Говнокод #9676

    +148

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    .top_menu LI:FIRST-CHILD A
    {
    	width:100px;
    }
    .top_menu LI + LI A
    {
    	width:167px;
    }
    .top_menu LI + LI + LI A
    {
    	width:127px;
    }
    .top_menu LI + LI + LI + LI A
    {
    	width:102px;
    }
    .top_menu LI + LI + LI + LI + LI A
    {
    	width:92px;
    }
    .top_menu LI + LI + LI + LI + LI + LI A
    {
    	width:184px;
    }

    Не совсем php, конечно, но отборное Г***о я встретил в проекте))

    mario2046, 14 Марта 2012

    Комментарии (3)
  8. C# / Говнокод #9675

    +110

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    // Loop through the list of passwords and try them until one works
    for (; passwordcounter < passwords.Length; passwordcounter++) 
    { 
         //shit goes here 
    }

    ...another one.

    fr0mrus, 14 Марта 2012

    Комментарии (15)
  9. C# / Говнокод #9674

    +137

    1. 1
    public abstract class User : SocketException { }

    Welcome to hell.

    fr0mrus, 14 Марта 2012

    Комментарии (9)
  10. PHP / Говнокод #9673

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $phone = str_replace("с",",",$phone);
    $phone = str_replace("до","",$phone);
    $phone = str_replace("д",",",$phone);
    $phone = str_replace("раб","",$phone);
    $phone = str_replace("м.","",$phone);
    $phone = str_replace("т","",$phone);
    $phone = str_replace("и",",",$phone);

    Silverthorne, 14 Марта 2012

    Комментарии (4)