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

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

    +101

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    procedure TSomeForm.DBGridEhDrawColumnCell(SomeParams);
    begin
      ShowRecordCount(GridDataSet);
    end;
    ...
    procedure ShowRecordCount(const FibDataSet: TpFibDataSet);
    begin
      FormMain.StatusBar1.Panels[2].Text := 'записей='+ IntToStr(FibDataSet.VisibleRecordCount);
      FormMain.StatusBar1.Refresh;
    end;

    По ходу решения задачи решил-таки глянуть, почему так дико тормозит главная, вся цветная грида формы, ожидая там дикие отрисовки, а там...

    labutinpa, 25 Ноября 2010

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

    +122

    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
    public enum SqlCallType {
    		Text = 1,
    		StoredProcedure = 2
    	}
    
    		private SqlCallType ConvertToSqlCallType(int sqlCallType) {
    			SqlCallType type = (SqlCallType)0;
    			if (sqlCallType == (int)SqlCallType.Text) {
    				type = SqlCallType.Text;
    			}
    			else if (sqlCallType == (int)SqlCallType.StoredProcedure) {
    				type = SqlCallType.StoredProcedure;
    			}
    			return type;

    приведение enum-->int по индусски для enum'а с двумя значениями....

    Unknown_2, 25 Ноября 2010

    Комментарии (3)
  4. Python / Говнокод #4734

    −166

    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
    import cgi
    import MySQLdb
     
    MyDB=MySQLdb.connect(host='localhost', user='root', passwd='', db='serv')
    cursor=MyDB.cursor()
    cursor.execute("""SELECT * FROM IndexPage WHERE id=2""")
    zg1=cursor.fetchall()
    zp=cgi.FieldStorage()
    p=zp.has_key('pages')
    lixt='lrof'
    title='{TITLE}'
    Block1='{BLOCK_1}'
     
    if p==1:
        print 'Content-Type: text/html\n'
        sh=open(r'themplates/sh2')
        res=sh.read()
        ...

    Пхпшники пересаживаются на Питон

    qbasic, 24 Ноября 2010

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

    +155

    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
    /* use <first> of a [std::pair] */
    template<typename _type_, typename _pred_>
    struct use_first {
    	use_first(_type_ val, _pred_ pred) { value = val; predicate = pred; }
    	
    	template<typename _first_type_, typename _second_type_>
    	bool operator()(const std::pair<_first_type_, _second_type_> &pr)
    	{
    		return predicate(pr.first, value);
    	}
    
    private:
    	_type_ value;
    	_pred_ predicate;
    };
    
    /* factory function: use it to init a [use_first] object */
    template<typename _type_, typename _pred_>
    use_first<_type_, _pred_> make_use_first(_type_ value, _pred_ pred)
    {
    	return use_first<_type_, _pred_>(value, pred);
    }
    
    /* usage of [use_first] */
    std::vector< std::pair<int, int> > lol;
    std::vector< std::pair<int, int> >::iterator = std::find_if(lol.begin(), lol.end(), make_use_first(0, std::equal_to()));

    собственно была проблема в том, что в контейнерах(например std::vector, std::deque) хранятся пары(std::pair) и зачастую нужно организовать какие-либо действия либо по первому(first), либо по второму(second) члену из std::pair.
    приведен код только для first, ибо код для second немного похож

    в итоге получилось сие поделие, а еще я люблю обмазаться несвежим....

    Govnoeb, 23 Ноября 2010

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

    +114

    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
    Ссылка ниже, там много всего, наиболее яркие моменты:
    1. 
    String Conn = (String)((NameValueCollection)Context.GetConfig("system.web/dsnstore"))["sql_site"];
    
    2. 
    qGetSum = new SqlCommand("select abs(ISNULL(sum(doc_bonus),0)) from vdoc where card_id = " + Session["card_id"] + " and dbo.Get_storno(doc_id) = 1", cGetSum);
    
    3. 
    SqlConnection cDiscount2 = new SqlConnection(Conn);
    SqlConnection cDiscount3 = new SqlConnection(Conn);
    
    4.
     log.Text = "Вы определены как:<br><b>" + Session["login"] + "<br><br></b>Бонус:<b>" + Session["bonus"] + "<br><br><a href=\"default.aspx?page=cardedit\">Личная карточка</a></b><br><br>";
    
    5. 
    Имена переменных: card_prefix, error_login_count, logoCMD, 
    
    6. 
    Session["access"] = 1;
    Session["access"] = -1;
    Session["access"] = -2;

    http://www.cyberforum.ru/asp-net/thread195915.html

    HIMen, 23 Ноября 2010

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

    +163

    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
    if (!fwrite($file,"<?php //конфигурационный файл
    \$dbpt='$path';
    \$dbus='$user';
    \$dbps='$pswrd';
    \$dbdb='$dbname';
    \$dbpr='$dbtbpr';
    ?>")) 
    		{
    			echo '3';
    			exit;
    		}
    		fclose($file);
    		mysql_select_db($dbname);
    		if (!mysql_query("create table {$dbtbpr}settings(nm varchar(255),about text, title varchar(255),link varchar(255))"))
    		{
    			echo '4';
    			exit;
    		}
    		if (!mysql_query("create table {$dbtbpr}remembers(id int,hash text,cookie text,pass text"))
    		{
    			echo '4';
    			exit;
    		}

    qbasic, 19 Ноября 2010

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    if (mode == MASTER)
    	Dev_Mode = MASTER;
    else
    	Dev_Mode = SLAVE;

    Vanuan, 19 Ноября 2010

    Комментарии (3)
  9. VisualBasic / Говнокод #4639

    −101

    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
    Dim lcIsCheck As Boolean = False
    
            Dim lcImages As DS_ExportFIO.sdImageRow = Me.DS_ExportFIO1.sdImage.Rows(0)
    
            If lcImages!Photo Is DBNull.Value Then
    
                lcIsCheck = IIf(lcIsCheck, lcIsCheck, False)
    
            Else
    
                lcIsCheck = True
    
            End If
    
            If lcImages!PhotoIshodn Is DBNull.Value Then
    
                lcIsCheck = IIf(lcIsCheck, lcIsCheck, False)
    
            Else
    
                lcIsCheck = True
    
            End If
    
            If lcImages!Sign Is DBNull.Value Then
    
                lcIsCheck = IIf(lcIsCheck, lcIsCheck, False)
    
            Else
    
                lcIsCheck = True
    
            End If
    
            If lcImages!SignIshod Is DBNull.Value Then
    
                lcIsCheck = IIf(lcIsCheck, lcIsCheck, False)
    
            Else
    
                lcIsCheck = True
    
            End If
    
            Return lcIsCheck

    хм... даже не знаю, как окоментить =)

    HellMaster_HaiL, 15 Ноября 2010

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

    −191

    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 * FROM l_table AS bl
    
    LEFT JOIN t_table AS bt
    
    ON (bl.ID = bt.ID)
    
    WHERE DZ IN
    
    (
    
    SELECT LEFT(GROUP_CONCAT(DZ ORDER BY DZ DESC), 19)
    
    FROM l_table GROUP BY UID
    
    )
    
    GROUP BY UID
    
    ORDER BY DZ DESC
    ;

    advvzlol, 13 Ноября 2010

    Комментарии (3)
  11. PHP / Говнокод #4610

    +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
    $myPid = getmypid();
    $state = shell_exec("ps -o \"%p:%P:%c;\"");
    $psPid = false;
    $processes = array();
    $linesArr = explode(";", $state);
    foreach($linesArr as $line)
    {
        $pProp = explode(":", $line);
        $processes[trim($pProp[0])] = $pProp;
        if($pProp[1] == $myPid)
        {
            $psPid = $pProp[0];
        }
    }
    //checking pids of processes
    if($psPid !== false)
    {
        if(key_exists($psPid - 1,$processes) && preg_match("/micq/i",$processes[$psPid - 1][2]))
        {
            $sessionConfig->addPid($psPid - 1);
        }
        if(key_exists($psPid - 2,$processes) && preg_match("/tail/i",$processes[$psPid - 2][2]))
        {
            $sessionConfig->addPid($psPid - 2);
        }
    }

    Вот и этот код, про который я рассказывал в комментарии к #4609

    raorn, 13 Ноября 2010

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