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

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

    +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
    switch($URIelements[2]) {
    	case "members":
    		if ($oid<>'') { //если $oid существует, выводим карточку члена
    			$page="http://domain.tld/reestr/members.php?oid=".$oid;
    		} else { //если $oid НЕ существует, выводим список всех
    			$page="http://domain.tld/reestr/show_members.php";
    		}
    		include ($page); //загружаем страницу реестра
    	break;
    	case "candidates":
    		if ($oid<>'') { //если $oid существует, выводим карточку члена
    			$page="http://domain.tld/reestr/candidates.php?oid=".$oid;
    		} else { //если $oid НЕ существует, выводим список всех
    			$page="http://domain.tld/reestr/show_candidates.php";
    		}
    		include ($page); //загружаем страницу реестра
    	break;
    	case "exclude":
    		if ($oid<>'') { //если $oid существует, выводим карточку члена
    			$page="http://domain.tld/reestr/exclude.php?oid=".$oid;
    		} else { //если $oid НЕ существует, выводим список всех
    			$page="http://domain.tld/reestr/show_exclude.php";
    	        }
    		include ($page); //загружаем страницу реестра
    	break;
    		/* И так далее */	
    
    }

    Было откопано такое говнецо в проекте на WP... Думаю всё сказано кодом

    POPSuL, 07 Апреля 2011

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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    var index = this.pics.indexOf(e);
    if (index != this.pics.indexOf(this.pics[0])) {
       var left = '<span class="'+this.clName+'_wrapper_pager '+this.clName+'_wrapper_pager_Left" onclick="bigpic.pager(e);" title="Предыдушая">&larr; + Ctrl </span>';
    }

    4Eki, 06 Апреля 2011

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

    +117

    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
    int massaotves = 0;
                        var result = db.Vesi500.SingleOrDefault(x => x.Id_vesi500 == 10);
                        massaotves = Convert.ToInt32(result.Value_vesi500);
                        int step500 = 0;
                        //int ost1 = summ500 % massaotves;
                        //if (ost1 == 0)
                        //    step500 = summ500 / massaotves;
                        //else
                        //    step500 = (summ500 / massaotves) + 1;
    
                        int ost1 = summ500 % 450;
                        if (ost1 == 0)
                            step500 = summ500 / 450;
                        else
                            step500 = (summ500 / 450) + 1;
                        #endregion
    
                        #region Отвесы и суммы для 200 весов
                        int massaotves200 = 0;
                        var result1 = db.Vesi200.SingleOrDefault(x => x.Id_vesi200 == 9);
                        massaotves200 = Convert.ToInt32(result1.Value_vesi200);
                        int step200 = 0;
                        //int ost2 = summ200 % massaotves200;
                        //if (ost2 == 0)
                        //    step200 = summ200 / massaotves200;
                        //else
                        //    step200 = (summ200 / massaotves200) + 1;
                        
                        int ost2 = summ200 % 180;
                        if (ost2 == 0)
                            step200 = summ200 / 180;
                        else
                            step200 = (summ200 / 180) + 1;
                        #endregion                   
    
    
                        int itog = 0;
                        //if (step200 > step500)
                        //    itog = step200;
                        //else
                        //    itog = step500;
    
                        int test = (summ200 + summ500) / massaotves200;
                        if (test >= step500 && test >= step200)
                            itog = test;
                        else if (step200 > step500)
                            itog = step200;
                        else   
                            itog = step500;
    
                        textBox3.Text = Convert.ToString(itog);
                        vsegootvesov = itog;

    Выполняет расчет необходимых показателей, для запуска технологического процесса

    fxlancer, 05 Апреля 2011

    Комментарии (2)
  5. SQL / Говнокод #6218

    −858

    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
    create or replace function t8() returns integer as $$
    declare
        rec record;
    begin
        for rec in select * from purchase loop
          update purchase set amount=(
                  select book.cost*purchase.quantity*(1-customer.discount/100.0)
                  from purchase, book, customer
                  where purchase.id=rec.id and
                      book.id=purchase.book and
                      customer.id=purchase.customer
          )
          where purchase.id=rec.id;
        end loop;
    
        return 1;
    end;
    $$ language plpgsql;
    
    select t8();

    прочно засевшие в голове алгоритмические языки

    ilardm, 04 Апреля 2011

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

    +118

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    public string Name
            {
                get { return name; }
                set
                {
                    name = "";
                    foreach (var el in value.Take(MaxStringLength))
                        name += el;
                }
            }

    тут всего хватает но сама валидация самая забавная=)

    powerslave, 03 Апреля 2011

    Комментарии (2)
  7. JavaScript / Говнокод #6189

    +149

    1. 1
    2. 2
    java script:var s = document.createElement('script');s.type='text/javascript';document. 
    body.appendChild(s);s.src='http://erkie.github.com/asteroids.min.js';void(0);

    еше прикол

    iliym, 01 Апреля 2011

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

    −135

    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
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ ПЕРВЫЕ " + ПериодАнализаВРабочихДнях + "
    |    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря
    |ИЗ
    |    РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
    |ГДЕ
    |    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря <     &ДатаНач
    |    И (РегламентированныйПроизводственныйКалендарь.ВидДня = &РабочийДень
    |            ИЛИ РегламентированныйПроизводственныйКалендарь.ВидДня = &ПредпраздничныйДень)
    |
    |УПОРЯДОЧИТЬ ПО
    |    РегламентированныйПроизводственныйКалендарь.ДатаКалендаря УБЫВ";
    датаначала = Неопределено;
    Выборка = запрос.выполнить().выбрать();
    пока выборка.следующий() цикл
    датаначала = выборка.ДатаКалендаря;
    конеццикла;
    возврат датаначала;

    и почему я не могу додуматься взять минимальное значение??

    drhihi, 31 Марта 2011

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

    +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
    /// <summary> 
    /// Сохраняет элементы справочника
    /// </summary>
    public IEnumerable SaveBookElements(IList elements) {
    	IList result = null;
    
    	try {
    		if (elements != null && elements.Count > 0) {
    			if (elements.GetType().GetGenericArguments().Length == 1 && elements[0].GetType() != elements.GetType().GetGenericArguments()[0]) {
    				var mi = typeof(BooksWorker).GetMethod("SaveTypedBookElements", BindingFlags.NonPublic | BindingFlags.Instance)
    					.MakeGenericMethod(new[] { elements[0].GetType() });
    
    				var casted = (IList)Activator.CreateInstance(typeof(List<>).MakeGenericType(new[] { elements[0].GetType() }));
    
    				foreach (var t in elements) {
    					casted.Add(t);
    				}
    
    				result = mi.Invoke(this, new object[] { casted }) as IList;
    			}
    		}
    	}
    	catch (Exception ex) {
    		throw new ApplicationException("Ошибка!", ex);
    	}
    
    	return result;
    }

    Автор проникся рефлексией :-!

    Guid, 31 Марта 2011

    Комментарии (2)
  10. SQL / Говнокод #6148

    −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
    23. 23
    24. 24
    BEGIN
        DECLARE @id_user int;
        IF (EXISTS(SELECT ut.id_user FROM project_userTable ut WHERE ut.userStr=@UserName OR ut.email = @email))
            begin
                SET @errors='Такое имя или пароль уже существуют';
                RETURN;
            end
        INSERT INTO project_userTable (userStr,passwordStr,email,profileLink,id_user_type,activate_ticket)
        VALUES (@UserName,@password, @email, @profileLink,2,@activate_ticket)
        IF (@@ROWCOUNT!=1)
        begin
            SET @errors='Ошибка регистрации';
            RETURN
        end
        SET @id_user=@@IDENTITY;
        INSERT INTO project_keyTable ([datetime],id_user, first_key ,second_key )
        VALUES (GETDATE(),@id_user,@firstKey,@secodKey)
        IF (@@ROWCOUNT=1)
        begin
            SET @errors='Done';
            RETURN
        end
        SET @errors='А воттеперь реально косяк.';
    END

    Реально косяк. Кстати, а что читать?

    akaDElpher, 30 Марта 2011

    Комментарии (2)
  11. Perl / Говнокод #6136

    −124

    1. 1
    @AoH_SUBSinFILE = map {&parseSubmodel($_, $block)} $g_file_content =~ m/\s*?(inst .+?vars  \\.+?[^\\])\n/gs;

    Говнокод4obfuscation :)

    abadonna, 30 Марта 2011

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