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

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

    −167

    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
    declare @billing_types table(k int null, t varchar(14)
    	collate SQL_Latin1_General_CP1255_CI_AS)
    insert @billing_types 
    values (1, 'אשרי')
    	   ,(2, 'צ׳ק')
    	   ,(3, 'הוראת קבע')
    
    declare @standing_order_status table(i int null, s varchar(14)
    	collate SQL_Latin1_General_CP1255_CI_AS)
    insert @standing_order_status 
    values (4, 'מבותל')
    	   ,(3, 'לא מאושר')
    	   ,(2, 'ממתין')
    	   ,(1, 'מאושר')
    
    declare @fax varchar(20)
    
    select billing_company_id
          ,internal_company_name
    	  ,isnull(t, 'לא פעיל') collate SQL_Latin1_General_CP1255_CI_AS as payment_type_string
          ,case when company_email is null then ''
    			when replace((ltrim(rtrim(company_email))), '0', '') = '' then ''
    			-- some emails were imported in the way, they aren't valid
    			when charindex('@', company_email) = 0 then ''
    			else (ltrim(rtrim(company_email))) end as email
          ,case when replace(ltrim(rtrim(company_fax)), '0', '') = '' 
    			then ''
    	   		when -- some times there are words like "none", "n/a" etc. in there
    			replace(replace(replace(replace(replace(replace(replace(
    				replace(replace(replace(replace(ltrim(rtrim(company_fax)), '-', ''), 
    				'0', ''), '1', ''), '2', ''), '3', ''), '4', ''), '5', ''), '6', ''),
    				'7', ''), '8', ''), '9', '') != '' 
    			then ''
    			else replace(ltrim(rtrim(company_fax)), '-', '')
    		end as c_fax
          ,ltrim(rtrim(company_address)) as c_address
          ,ltrim(rtrim(cast(company_comments as varchar(1000)))) as c_comments
          ,invoice_send_with_details
          ,invoice_send_fax
          ,invoice_print
          ,ltrim(rtrim(cc_name)) as c_name
          ,ltrim(rtrim(cc_number)) as c_number
          ,ltrim(rtrim(cc_cvv)) as c_cvv
          ,ltrim(rtrim(cc_id)) as c_id
          ,ltrim(rtrim(cc_expire)) as c_expire
          ,ltrim(rtrim(bank_number)) as number
          ,ltrim(rtrim(bank_branch)) as branch
          ,ltrim(rtrim(bank_account)) as account
          ,bank_hoshen
    	  ,isnull(s, 'אין') collate SQL_Latin1_General_CP1255_CI_AS as order_status
    from billing_companies
    left join @billing_types bt on bt.k = payment_type
    left join @standing_order_status os on os.i = bank_standing_order_status

    Война. Экспорт в Эксель, для того, чтобы потом ее обратно, но уже другим людям в базу передать.
    Из интересных подробностей. Поле "факс" в базе имеет тип varchar(50), например. Никакой серверной валидации отродясь не было. Иногда люди просто путали факс и электорпочту, когда заполняли данные.

    wvxvw, 13 Марта 2013

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

    +106

    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
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    namespace data_base
    { public class DatA
    { public struct DATA
    { public struct Yslovie { public string yslovie; public bool ActivE;}
    public Yslovie yslovie1;
    public Yslovie yslovie2;
    public Yslovie yslovie3;
    public string deistvie;};
    public DATA.Yslovie yslovie1 = new DATA.Yslovie();
    public DATA.Yslovie yslovie2 = new DATA.Yslovie();
    public DATA.Yslovie yslovie3 = new DATA.Yslovie();
    public DATA[] BD = new DATA[5];
    public void инициализация_БД()
    { BD[0].yslovie1.yslovie = "поставщик проверенный"; BD[0].yslovie1.ActivE = false;
    BD[0].yslovie2.yslovie = "товар качественный"; BD[0].yslovie2.ActivE = false;
    BD[0].yslovie3.yslovie = "цена приемлемая"; BD[0].yslovie3.ActivE = false;
    BD[0].deistvie = "Поставщик подходит";
    BD[1].yslovie1.yslovie = "поставщик давно на рынке"; BD[1].yslovie1.ActivE = false;
    BD[1].yslovie2.yslovie = "жалоб на поставщика не было"; BD[1].yslovie2.ActivE = false;
    BD[1].yslovie3.yslovie = null; BD[1].yslovie3.ActivE = false;
    BD[1].deistvie = "поставщик проверенный";
    BD[2].yslovie1.yslovie = "есть рекомендации от других заказчиков"; BD[2].yslovie1.ActivE = false;
    BD[2].yslovie2.yslovie = "поставка производится в срок"; BD[2].yslovie2.ActivE = false;
    BD[2].yslovie3.yslovie = "товар не получает дефектов в ходе транспатрировки"; BD[2].yslovie3.ActivE = false;
    BD[2].deistvie = "жалоб на поставщика не было";
    BD[3].yslovie1.yslovie = "товар сертифицирован"; BD[3].yslovie1.ActivE = false;
    BD[3].yslovie2.yslovie = "товар прощел государственные экспертизы"; BD[3].yslovie2.ActivE = false;
    BD[3].yslovie3.yslovie = null; BD[3].yslovie3.ActivE = false;
    BD[3].deistvie = "товар качественный";
    BD[4].yslovie1.yslovie = "цена чуть ниже чем у других поставщиков"; BD[4].yslovie1.ActivE = false;
    BD[4].yslovie2.yslovie = null; BD[4].yslovie2.ActivE = false;
    BD[4].yslovie3.yslovie = null; BD[4].yslovie3.ActivE = false;
    BD[4].deistvie = "цена приемлемая";
    }
    public void Констотация_факта(int i)
    { switch (i)
    { case 1: if (BD[0].yslovie1.ActivE == true) BD[0].yslovie1.ActivE = false;
    else BD[0].yslovie1.ActivE = true; break;
    case 2: if (BD[0].yslovie2.ActivE == true) BD[0].yslovie2.ActivE = false;
    else BD[0].yslovie2.ActivE = true; break;
    case 3: if (BD[0].yslovie3.ActivE == true) BD[0].yslovie3.ActivE = false;
    else BD[0].yslovie3.ActivE = true; break;
    case 4: if (BD[1].yslovie1.ActivE == true) BD[1].yslovie1.ActivE = false;
    else BD[1].yslovie1.ActivE = true; break;
    case 5: if (BD[1].yslovie2.ActivE == true) BD[1].yslovie2.ActivE = false;
    else BD[1].yslovie2.ActivE = true; break;
    case 6: if (BD[1].yslovie3.ActivE == true) BD[1].yslovie3.ActivE = false;
    else BD[1].yslovie3.ActivE = true; break;
    case 7: if (BD[2].yslovie1.ActivE == true) BD[2].yslovie1.ActivE = false;
    else BD[2].yslovie1.ActivE = true; break;
    case 8: if (BD[2].yslovie2.ActivE == true) BD[2].yslovie2.ActivE = false;
    else BD[2].yslovie2.ActivE = true; break;
    case 9: if (BD[2].yslovie3.ActivE == true) BD[2].yslovie3.ActivE = false;
    else BD[2].yslovie3.ActivE = true; break;
    case 10: if (BD[3].yslovie1.ActivE == true) BD[3].yslovie1.ActivE = false;
    else BD[3].yslovie1.ActivE = true; break;
    case 11: if (BD[3].yslovie2.ActivE == true) BD[3].yslovie2.ActivE = false;
    else BD[3].yslovie2.ActivE = true; break;
    case 12: if (BD[3].yslovie3.ActivE == true) BD[3].yslovie3.ActivE = false;
    else BD[3].yslovie3.ActivE = true; break;
    case 13: if (BD[4].yslovie1.ActivE == true) BD[4].yslovie1.ActivE = false;
    else BD[4].yslovie1.ActivE = true; break;
    case 14: if (BD[4].yslovie2.ActivE == true) BD[4].yslovie2.ActivE = false;
    else BD[4].yslovie2.ActivE = true; break;
    case 15: if (BD[4].yslovie3.ActivE == true) BD[4].yslovie3.ActivE = false;
    else BD[4].yslovie3.ActivE = true; break;}
    }}}

    оставлю тут

    Psilon, 04 Марта 2013

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

    +139

    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
    for (int i = 0; i < 100; i++)
    {
        string s = i.ToString();
    
        if (s.Length == 1)
        {
            s = "00" + s;
        }
    
        if (s.Length == 2)
        {
            s = "0" + s;
        }
    
        Console.WriteLine(s);
    }

    Из рабочего проекта. Парень не слышал про string.Format("{0:000}", i)

    pewpew, 28 Февраля 2013

    Комментарии (15)
  5. Pascal / Говнокод #12602

    +93

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    s := '  .  ';
    IF fGamma >= 1000 THEN s[1] := CHR (ORD ('0') + fGamma DIV 1000);
    s[2] := CHR (ORD ('0') + fGamma DIV 100 MOD 10);
    s[4] := CHR (ORD ('0') + fGamma DIV 10 MOD 10);
    s[5] := CHR (ORD ('0') + fGamma MOD 10);

    Перевод числа в строку.
    Из исходников Photoshop 1.0.1
    http://bit.ly/W11p5e
    Там на первый взгляд хватает копипасты. Но особо не углублялся.

    absolut, 16 Февраля 2013

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

    +53

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    /**
    	 * Магический геттер
    	 * 
    	 * @param string $name
    	 * @return mixed 
    	 */
    	public function __get($name)
    	{
    		if ($name == $this->fileName)
    			return $this->fileName;
    	}

    Magic is here

    travka, 29 Января 2013

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

    +55

    1. 1
    2. 2
    3. 3
    $result["rg"][count($result["rg"])-1]["status"][] = Array();
    $c_res = count($result["rg"][count($result["rg"])-1]["status"])-1;
    $result["rg"][count($result["rg"])-1]["status"][$c_res] = $arr_source_data[$i];

    Им за число строк платят, что ли?

    clauclauclau, 14 Января 2013

    Комментарии (15)
  8. PHP / Говнокод #12386

    +44

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    public function addHeadJS($src){
        $js_tag = '<script language="JavaScript" type="text/javascript" src="/'.$src.'"></script>';
    	if($this->is_ajax) { echo $js_tag; return true; }
    	$this->addHead($js_tag);
        return true;
    }

    Добавляет тег <script> с указанным путем
    @param string $src - Первый слеш не требуется
    @return true

    Govnisti_Diavol, 04 Января 2013

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

    +163

    1. 1
    jQuery("body").trigger( F11 )

    Попытка перейти в полноэкранный режим.. Найдено в недрах одного довольно серьезного проекта.

    diezvl, 10 Декабря 2012

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

    +53

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $this->_requestUri = 0 === strpos($_SERVER['REQUEST_URI'], $_SERVER['SCRIPT_NAME'])
                ? substr(
                    $_SERVER['REQUEST_URI'], strlen($_SERVER['SCRIPT_NAME'])
                )
                : $_SERVER['REQUEST_URI'];

    __proto__, 08 Декабря 2012

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

    +105

    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
    protected override void WndProc(ref Message m)
                {
                    base.WndProc(ref m);
    
                    //All mouse messages have to be passed to the Master Edit Control
                    //because the panel intercepts them.  
                    if (m.Msg == PUtils.WM_MOUSEMOVE)
                        PUtils.SendMessageToMaster(m.Msg, m.WParam, m.LParam, -1);
                    else
                        if (m.Msg == PUtils.WM_LBUTTONDOWN)
                            PUtils.SendMessageToMaster(m.Msg, m.WParam, m.LParam, -1);
                        else
                            if (m.Msg == PUtils.WM_LBUTTONUP)
                                PUtils.SendMessageToMaster(m.Msg, m.WParam, m.LParam, -1);
                            else
                                if (m.Msg == PUtils.WM_LBUTTONDBLCLK)
                                    PUtils.SendMessageToMaster(m.Msg, m.WParam, m.LParam, -1);
                                else
                                    if (m.Msg == PUtils.WM_MOUSELEAVE)
                                        PUtils.SendMessageToMaster(m.Msg, m.WParam, m.LParam, -1);
                                    else
                                        if (m.Msg == PUtils.WM_RBUTTONDOWN)
                                            PUtils.SendMessageToMaster(m.Msg, m.WParam, m.LParam, -1);
                                        else
                                            if (m.Msg == PUtils.WM_MOUSEACTIVATE)
                                                PUtils.SendMessageToMaster(m.Msg, m.WParam, m.LParam, -1);
                }//Override WndProc

    паубивав бы !!!

    63F45EF45RB65R6VR, 23 Ноября 2012

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