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

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

    +145

    1. 1
    alert("0"==0);

    Просто замечательный язык. Как строка может равняться нулю? Кому в голову могла прийти настолько плохая идея?
    Зачем программисту помнить, что есть ==, а есть ===? Почему не сделать ==2 и ==3.
    Почему так тупо?

    alexoy, 02 Октября 2011

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

    +172

    1. 1
    var id = document.getElementsById('color').id;

    омг

    jQuery, 29 Сентября 2011

    Комментарии (12)
  4. JavaScript / Говнокод #8017

    +160

    1. 1
    2. 2
    3. 3
    var messageDiv = document.getElementById("information-dialog");
    $(messageDiv).html(html);
    messageDiv.style.display = "block";

    Connor, 28 Сентября 2011

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

    +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
    if (!GetCurrentCurrency()) { print $_lang[ErrorGetCurrentCurrency]; mclose(); exit; }
    
    @set_time_limit(0);
    
    $company_name=GetSetting('company_name');
    $company_url=GetSetting('company_url');
    $billing_url=GetSetting('billing_url');
    $support_url=GetSetting('support_url');
    $manager_email=GetSetting('manager_email');
    
    $cronAutoSuspend = GetSetting('cronAutoSuspend');
    $cronSendAdminEndOrder = GetSetting('cronSendAdminEndOrder');
    $cronSendClientBillRemind = GetSetting('cronSendClientBillRemind');
    $cronSendClientBillRemindDays = GetSetting('cronSendClientBillRemindDays');
    $cronSendClientEndOrderRemind = GetSetting('cronSendClientEndOrderRemind');
    $cronSendClientEndOrderRemindDays = GetSetting('cronSendClientEndOrderRemindDays');
    $cronSendClientEndOrderDomainRemind = GetSetting('cronSendClientEndOrderDomainRemind');
    $cronSendClientEndOrderDomainRemindDays = GetSetting('cronSendClientEndOrderDomainRemindDays');
    $cronDeleteBill = GetSetting('cronDeleteBill');
    $cronDeleteBillDay = GetSetting('cronDeleteBillDay');
    $cronDeleteNeobrabOrdersWithoutBills = GetSetting('cronDeleteNeobrabOrdersWithoutBills');
    $cronDeleteNeobrabOrdersDomainsWithoutBills = GetSetting('cronDeleteNeobrabOrdersDomainsWithoutBills');
    $cronDeleteOrder = GetSetting('cronDeleteOrder');
    $cronDeleteOrderDay = GetSetting('cronDeleteOrderDay');
    $cronAutoDelete = GetSetting('cronAutoDelete');
    $cronDeleteOrderDomain = GetSetting('cronDeleteOrderDomain');
    $cronDeleteOrderDomainDay = GetSetting('cronDeleteOrderDomainDay');
    $cronCloseTickets = GetSetting('cronCloseTickets');
    $cronCloseTicketsDay = GetSetting('cronCloseTicketsDay');
    $cronDeleteTickets = GetSetting('cronDeleteTickets');
    $cronDeleteTicketsDay = GetSetting('cronDeleteTicketsDay');
    $cronDeleteUserLogs = GetSetting('cronDeleteUserLogs');
    $cronDeleteUserLogsDay = GetSetting('cronDeleteUserLogsDay');
    $cronDeleteAdminLogs = GetSetting('cronDeleteAdminLogs');
    $cronDeleteAdminLogsDay = GetSetting('cronDeleteAdminLogsDay');
    $cronSendClientEndOrderShopRemind = GetSetting('cronSendClientEndOrderShopRemind');
    $cronSendClientEndOrderShopRemindDays = GetSetting('cronSendClientEndOrderShopRemindDays');
    $cronDeleteNeobrabOrdersShopWithoutBills = GetSetting('cronDeleteNeobrabOrdersShopWithoutBills');
    $cronDeleteOrderShop = GetSetting('cronDeleteOrderShop');
    $cronDeleteOrderShopDay = GetSetting('cronDeleteOrderShopDay');
    $cronSendClientEndTestRemind = GetSetting('cronSendClientEndTestRemind');
    $cronSendClientEndTestRemindDays = GetSetting('cronSendClientEndTestRemindDays');
    
    $autoRenewEnable=GetSetting("autoRenewEnable");
    $autoRenewClientChange=GetSetting("autoRenewClientChange");
    $autoRenewDay=GetSetting("autoRenewDay");
    $autoRenewDomainDay=GetSetting("autoRenewDomainDay");
    $autoRenewShopDay=GetSetting("autoRenewShopDay");
    
    $attachPDFtoBill = GetSetting("attachPDFtoBill");
    
    $cronSendClientEndTestRemind = GetSetting('cronSendClientEndTestRemind');
    $cronSendClientEndTestRemindDays = GetSetting('cronSendClientEndTestRemindDays');
    $cronAutoDeleteTest = GetSetting('cronAutoDeleteTest');
    
    
    
    if ($cronCloseTickets and intval($cronCloseTicketsDay) > 0) {
    
    и так дальше с каждой переменной ~ 1500 строк кода

    Равшан,где сериализация?
    Где сериализация кодя я тебя спашиваю?!

    - Где сериализация, насяльника, где?

    tertychniy, 23 Сентября 2011

    Комментарии (12)
  6. C++ / Говнокод #7939

    +160

    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
    #if !defined(_CONSOLE) && !defined(BOOTSTRAP_AGENT)
     g_scheduler.Init(&g_Schedule);
    #endif
    #if (defined(UNDER_CE) || defined(MC_AGENT)) && !defined(BOOTSTRAP_AGENT) /*&& !defined(_CONSOLE) */&& !defined(MC_APM_AGENT)
     m_collector.InitializeFromPDB(/*GetPdbFile()*/);
    #endif
    #if (defined(UNDER_CE) || defined(MC_AGENT)) && !defined(BOOTSTRAP_AGENT) && !defined(_CONSOLE) && !defined(MC_APM_AGENT)
     m_Alert.InitializeFromPDB();
    #endif
    #if !defined( _CONSOLE ) && !defined(BOOTSTRAP_AGENT)
     g_ScheduleEngine.Add( this ); // install scheduler
    #endif
    #if !defined(BOOTSTRAP_AGENT) && !defined(MC_APM_AGENT) && !defined(PRINTER_AGENT)
     g_manager.LoadFromPDB();
    #endif
    
    #if (defined(UNDER_CE) && !defined(BOOTSTRAP_AGENT)) || (defined(MC_AGENT) && !defined(_CONSOLE))
     WriteMCConnectionStatus(MCA_CONN_STATUS_INITIALIZING);
    #endif
     ASSERT(pData != NULL);
     DWORD dwRetries = 0;
    
     bool bFirstDevPkgInstalled = false; // for HHI agent only
     while (pData->nTask != PDT_QUIT)
     {
    #ifdef HHI_AGENT
    ..............

    без комментариев

    Alek86, 22 Сентября 2011

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

    +36

    1. 1
    2. 2
    3. 3
    $kd = strrpos("$fotofilenames[$i]", ".");
        $kf = substr("$fotofilenames[$i]", $kd+1, strlen("$fotofilenames[$i]")-$kd);
        $kf = strtolower($kf);

    вот так и живем.

    Специальная олимпиада по программированию для программистов PHP, VB и 1c (c)

    brainstorm, 22 Сентября 2011

    Комментарии (12)
  8. SQL / Говнокод #7933

    −862

    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
    SELECT POL_PREMIUM
       INTO i_csp
       FROM policy
       WHERE 
        policy_key = i_polkey AND 
        pol_status_cde = 1;
       
     SELECT POL_CLIENT_CDE
         INTO i_clientno
         FROM policy
       WHERE policy_key = i_polkey
       AND pol_status_cde = 1;
       
       SELECT POL_PLAN_CDE
         INTO i_plan
         FROM policy
       WHERE policy_key = i_polkey
       AND pol_status_cde = 1;
    
    SELECT 110
          INTO i_SecAllrks
          FROM DUAL;

    Запятые и знаки инициализации переменных придумали для трусов =) Имхо. Не вкурила зачем так делать.

    Dragon, 22 Сентября 2011

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

    +159

    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
    <?php
    	class Cache
    {
    		var $secret;
    		function create($timexpire, $data, $catalog="cache/"){
    			$filename = $catalog.$this->cache().".cache";
    			$data = "$timexpire\n$data";
    			$fo = fopen($filename, "w");
    			fwrite($fo, $data);
    			fclose($fo);
    		}
    		function read($catalog = "cache/"){
    			$filename = $catalog.$this->cache().".cache";
    			if(file_exists($filename)){
    				$content = file($filename);
    				if(trim($content[0]) < time()){
    					return 0;
    				}
    				unset($content[0]);
    				return ltrim(implode('', $content));
    			}
    			return 0;
    		}
    		function clean($catalog = "cache/"){
    			if($data = glob($catalog."*")){
    				foreach($data as $o){
    					if(is_dir($o)){
    						$this->clean($o);
    					}else{
    						unlink($o);
    					}
    				}
    			}
    			rmdir($catalog);
    		}
    		function cache(){
    				$filename = $_SERVER['REQUEST_URI'];
    				if(isset($_POST)){
    					$filename .= implode('',$_POST);
    				}
    				return md5($this->secret.$filename);
    		}
    }
    ?>

    Мой класс для кеширования.
    Писал давно.

    snet, 21 Сентября 2011

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    <? echo "$Welcome" ?> <? 	
    	$site = session_id();
    	 echo ", <b>" . $_SESSION["esb2b_username"] . "</b>" ;
    ?>

    Из одного китайско-арабского скрипта. Хорошо дан пробел после "Welcome".

    otnes, 09 Сентября 2011

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

    +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
    <select onchange="goTo();" id="navSelect">
    <option value="/way_to_hell/">Вопросы-ответы</option>
    .
    .
    .
    </select>
    
    <script>
    function goTo()
    {
      var objSel = document.getElementById("navSelect");
      window.location = objSel.options[objSel.selectedIndex].value;
    }
    
    </script>
    
    
    
    //можно вообще вот так:
    <select onchange="window.location = this.options[this.selectedIndex].value">

    dr_fet, 08 Сентября 2011

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