1. Лучший говнокод

    В номинации:
    За время:
  2. Java / Говнокод #8004

    +81

    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
    /*
     * Copyright 2009 Sun Microsystems, Inc.
     * All rights reserved.  You may not modify, use,
     * reproduce, or distribute this software except in
     * compliance with  the terms of the License at:
     * http://developer.sun.com/berkeley_license.html
     */
    
    
    package cart.util;
    
    public class IdVerifier {
        public IdVerifier() {
        }
    
        public boolean validate(String id) {
            boolean result = true;
    
            for (int i = 0; i < id.length(); i++) {
                if (Character.isDigit(id.charAt(i)) == false) {
                    result = false;
                }
            }
    
            return result;
        }
    }

    Java EE tutorial

    ingenuus, 27 Сентября 2011

    Комментарии (44)
  3. JavaScript / Говнокод #7692

    +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
    function toggleCategory(tableId, imgId) {
    	var display = document.getElementById(tableId).style.display;
    	var classname;
    	if (display == "none") {
    		display = "block";
    		classname = "toggleClosed";
    	} else {
    		display = "none";
    		classname = "toggleOpen";
    	}
    	
    	var img = document.getElementById(imgId);
    	img.className = classname;
    	document.getElementById(tableId).style.display = display;
    }

    И все это c jQuery наборту. Латвийская соц-сеть, чё

    jQuery, 29 Августа 2011

    Комментарии (44)
  4. Си / Говнокод #7522

    +142

    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
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    /* gcc -static -Os -W -nostartfiles -fno-stack-protector -U_FORTIFY_SOURCE glibc_preinstall.c */
    
    #include <unistd.h>
    #include <signal.h>
    #include <sys/utsname.h>
    
    #ifndef MIN_KERNEL_VERSION
    # error "MIN_KERNEL_VERSION not defined"
    #endif
    #define PRINT_MSG(msg) write(2, (msg), sizeof(msg) - 1)
    #define FATAL(msg) do {PRINT_MSG(msg); kill_parent(); _exit(1);} while(0)
    
    static void kill_parent(void)
    {
    	pid_t pid = getppid();
    	if (pid < 100)
    		return;
    
    	PRINT_MSG("Sending SIGSTOP signal to parent process.\n");
    	(void) kill(pid, SIGSTOP);
    }
    
    static int is_digit(char c)
    {
    	return c >= '0' && c <= '9';
    }
    
    static int
    parse_release(const char *p)
    {
    	unsigned int i, osversion = 0;
    
    	for (i = 0; i < 3 && *p; i++, ++p)
    	{
    		unsigned int d = 0;
    
    		for (; is_digit(*p); ++p)
    			d = d * 10 + (*p - '0');
    
    		if (d == 0 || d >= 255 || (i < 2 && *p && *p != '.'))
    		{
    			osversion = 0;
    			break;
    		}
    		osversion |= d << (16 - 8 * i);
    	}
    	return osversion;
    }
    
    static void
    check_kernel_version(void)
    {
    	struct utsname name;
    
    	if (uname(&name) < 0)
    		FATAL("kernel version check failed: uname syscall failed.\n");
    
    	if (parse_release(name.release) < parse_release(MIN_KERNEL_VERSION))
    		FATAL("kernel version check failed: KERNEL TOO OLD, "
    		      "minimal version supported by glibc is " MIN_KERNEL_VERSION
    		      ".\n");
    }
    
    void
    _start(void)
    {
    	check_kernel_version();
    	_exit(0);
    }

    Скрипт на языке Си, проверяющий, что загружено ядро версии не меньшей чем MIN_KERNEL_VERSION (2.6.18 на момент написания). Очень красиво взрывается на ядре 3.0.

    raorn, 11 Августа 2011

    Комментарии (44)
  5. JavaScript / Говнокод #7494

    +170

    1. 1
    var verstka = parseInt((Number(count)/100)*5); // 7%

    сурово

    riactr, 09 Августа 2011

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

    +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
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    <? 
    	//------------------------------------------//
    	// Рисуем кнопку с цифирками xD 			//
    	//------------------------------------------//
    	
    	// Берём конфиг и библиотеки
    	$db_db		=	"hoster1129_mc";  		// Имя  базы  данных  
        $db_user	=	"hoster1129_mc";  		// Пользователь  сервера  баз  данных  
        $db_pass	=	"SH3vOp4m";  		// Пароль  
        $db_server	=	"localhost";  		// Имя  сервера 
    	
    	$red		=	"80"; 		// RGB(Red)
    	$green		=	"80"; 		// RGB(Green)
    	$blue		=	"80"; 		// RGB(Blue)
    	
    	//$count		= 	"123";	
    	
    	// Проверим соединение с базой
    	$link = @mysql_connect($db_server, $db_user, $db_pass);  
    	if(!$link)
    	{	
    	die('Невозможно подключится к MySQL базе');	
    	}
    	
    	//Убираем кол-во
    	$count = "0";
    	//Берем кол-во серверов с базы
    	$link = mysql_connect($db_server, $db_user, $db_pass);  
    	if(!$link)  die("MySQL Error");  
    	mysql_select_db($db_db)  or  die("MySQL Error");  
    	$query = "SELECT  *  FROM  ats_stats";  
    	$result = mysql_query($query,  $link)  or  die(mysql_error()); 
    	//Цикль
    	while($info = mysql_fetch_array($result))  
    	{
    		if($_GET['username'] == $info['username'])
    		{
    		$count = $info['num_ratings'];
    		break;
    		}
    	}
    	//Рисуем))
    	header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");
    	header("Cache-Control: no-store, no-cache, must-revalidate");
    	header("Cache-Control: post-check=0, pre-check=0", false);
    	header("Pragma: no-cache");
    	header("Content-type: image/png");
    
    	//Устанавливаем переменные
    	$whatthefuck = mb_strlen($count);
    	$image = ImageCreateFromPNG('vote.png');
    	$color = ImageColorAllocate($image,$red,$green,$blue);
    	
    	//Проверяем кол-во символов
    	if($whatthefuck == 1)
    	{
    	ImageString($image,3,62,15,$count,$color);
    	}
    	elseif($whatthefuck == 2)
    	{
    	ImageString($image,3,58,15,$count,$color);
    	}
    	elseif($whatthefuck == 3)
    	{
    	ImageString($image,3,55,15,$count,$color);
    	}
    	elseif($whatthefuck == 4)
    	{
    	ImageString($image,3,51,15,$count,$color);
    	}
    	elseif($whatthefuck == 5)
    	{
    	ImageString($image,3,48,15,$count,$color);
    	}	
    	else
    	{
    	ImageString($image,3,50,15,"WTF?!",$color);
    	}
    
    	//Выводим картинку
    	ImagePNG($image);
    ?>

    Скрипт должен выводить число голосов по имени.

    Enelar, 06 Июня 2011

    Комментарии (44)
  7. Куча / Говнокод #6538

    +134

    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
    function ()	
            local res = false
    
    	for j = 1, hE do
    		if () then
    		elseif () or () then
    		elseif () or () then
    		else
    			res = true
    		end
    	end
    	if not res then
    		return res
    	end
    	return true
    end

    Код взят из миниигры в разрабатываемой казуалке.
    Первое непонятно накуя выпендриваться с кучей условий с пустыми телами, если результат получим только в одном случае.
    Второе вообще убивает: накуя танцы с переменной res в конце тела ф-ции?

    MAGnit, 04 Мая 2011

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

    +165

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    template<typename Class>
    void Raise(int Code)
    {
      throw Class(Code);
    };

    Продолжение эпоса из уже всем знакомого проекта, доставшегося по наследству, в котором активно используются исключния.

    Говногость, 21 Февраля 2011

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

    +116

    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
    var sEmailRecipient = string.Empty;
    
                        string m_sPhysicalPath = "";
                        if (SaveType == "both" || SaveType == "email")
                        {
                            
                            List<User> recipients = null;
                            if (RecipentSelectMode == "auto")
                            {
                                if (!string.IsNullOrEmpty(AutoRecipient))
                                    recipients = Notification.ConvertToUsers(AutoRecipient, MethodologyId, CurrentObjectId, CurrentUserId, CurrentEntityName);
                            }
                            if(RecipentSelectMode == "manual"){
                                if (Recipient != null)
                                    sEmailRecipient = EvaluateExpression(CurrentUserId, MethodologyId, MainEntityName, MainObjectId, Recipient);
                            }
                            
                             m_sPhysicalPath = Document.AbsoluteApplicationPath + "/" + p_sReportPath.Substring(p_sReportPath.LastIndexOf("storage"));
    
                             if (RecipentSelectMode == "auto")
                             {
                                 foreach (User user in recipients)
                                 {
                                     if (Regex.IsMatch(user.Email, @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*", RegexOptions.None))
                                     {
                                         SendReportByEmail(m_sPhysicalPath, user);
                                     }
                                 }
                             }
                             if (RecipentSelectMode == "manual")
                             {
                                 if (Regex.IsMatch(Recipient, @"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*", RegexOptions.None))
                                 {
                                     SendReportByEmail(m_sPhysicalPath, new User { Email = sEmailRecipient });
    
                                 }
                                 else
                                 {
                                     return CreateResult(GetClientData(), "Email message sending failed - incorrect email address - " + Recipient, (int)ReportRenderingFailType.Success);
    
                                 }
                        
                             }
    
                        }
                        if (SaveType == "email")
                        {
                            FileInfo file = new FileInfo(m_sPhysicalPath);
                            if (file.Exists)
                                file.Delete();
                        }

    Отправляет отчет по email

    PetrLyapin, 27 Января 2011

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

    +145

    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
    <?php
    class Pwd {
        private static $pc='bcdfghjklmnprstvwxyz'; 
        private static $pv='aeiou';
        private static $pd='0123456789';
        private static $ps='!@#$%^&*_-+=';
        
        private static function randsub($s) {
        	$c=$s[rand(0, strlen($s)-1)];
        	return rand(0, 1)?strtoupper($c):strtolower($c);
        }
        
    	public static function password($min=4,$max=10) {
    		$p='';
    		for($i=0;$i<$max;$i++) {
    			switch (rand(0, 7)) {
    				case 0:
    				$p.=self::randsub(self::$pc);
    				break;
    				case 1:
    				$p.=self::randsub(self::$pv);
    				break;
    				case 2:
    				$p.=self::randsub(self::$pd);
    				break;
    				case 3:
    				$p.=self::randsub(self::$pc).self::randsub(self::$pv);
    				break;
    				case 4:
    				$p.=self::randsub(self::$pv).self::randsub(self::$pc);
    				break;
    				case 5:
    				$p.=self::randsub(self::$pc).self::randsub(self::$pv).self::randsub(self::$pc);
    				break;
    				case 6:
    				$p.=self::randsub(self::$pv).self::randsub(self::$pc).self::randsub(self::$pv);
    				break;
    				case 7:
    				$p.=self::randsub(self::$ps);
    				break;
    			}
    		}
    		return substr($p, 0,rand($min, $max));
    	}
    	
    }

    хитровыебанный лисапедрильный пассвордоген.

    и PHP тут не причем, лень - это зло = )

    Lure Of Chaos, 30 Декабря 2010

    Комментарии (44)
  11. JavaScript / Говнокод #4794

    +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
    http://vkontakte.ru/
    <noscript><meta http-equiv="refresh" content="0; URL=/badbrowser.php"></noscript>
    
    
    http://vkontakte.ru/badbrowser.php
    <script type="text/javascript">
    <!--
    
    //window.checkbrowser = true;
    if (window.checkbrowser) {
      try {
        if (new XMLHttpRequest()) {
          location.replace('/');
        }
      } catch(e) {
        try {
          if (new ActiveXObject('Msxml2.XMLHTTP')) {
            location.replace('/');
          }
        } catch(e) {}
        try {
          if (new ActiveXObject('Microsoft.XMLHTTP')) {
            location.replace('/');
          }
        } catch(e) {}
      }
    }
    -->
    </script>

    Вот так суровые вконтактостроители отправляют на йуг пользователей NoScript.

    Vindicar, 30 Ноября 2010

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