1. Java / Говнокод #2757

    +71

    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
    String ID = httpServletRequest.getParameter("id");
            ChannelData data = new ChannelData();
    
            int pointPos = ID.indexOf(';');
    
            while(pointPos >= 0) {
                String CurrentID = ID.substring(0, pointPos);
                data.setId(new Integer(CurrentID));
    
               ChannelData channel = (ChannelData) channelDao.Get(Integer.valueOf(CurrentID));
    
                channelService.delete(data);
                ID = ID.substring(pointPos + 1, ID.length());
                pointPos = ID.indexOf(';');
            }
            if(ID.length() > 0) {
                ChannelData channel = (ChannelData) channelDao.Get(Integer.valueOf(ID));
                data.setId(new Integer(ID));
                channelService.delete(data);
            }

    prop, 11 Марта 2010

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

    +159.7

    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
    83. 83
    84. 84
    85. 85
    86. 86
    $q = "SELECT product_id FROM jos_vm_product WHERE product_parent_id=$prodid";
        $res = mysql_query($q);
        if(!$res) die('Error 3: ' . mysql_error());
        
        $td_str=' ';
        $pos_atrribs=array();
        $row=0;
        $sort_by=0;
        $subrows=0;
        $show_cells=0;
        
        while($pos=mysql_fetch_array($res))
        {
          $posid=$pos['product_id'];
          $q1 = "SELECT attribute_value,attribute_name  FROM jos_vm_product_attribute WHERE product_id=$posid ORDER BY attribute_name DESC";
          $res1 = mysql_query($q1);
          if(!$res1) die('Error 4: ' . mysql_error());
          
          $col=0;
          while($posattrib=mysql_fetch_array($res1))
          {
            if($posattrib['attribute_name']=='Код фитинга' || $posattrib['attribute_name']=='Код' || $posattrib['attribute_name']=='Кодфитинга' || $posattrib['attribute_name']=='Ordering code')
            {
              $sort_by=$posattrib['attribute_name'];
            }
            $pos_atrribs[$row][$posattrib['attribute_name']]=$posattrib['attribute_value'];
            $col++;
          }
          
          $q1 = "SELECT product_in_stock FROM jos_vm_product WHERE product_id=$posid";
          $res1 = mysql_query($q1);
          if(!$res1) die('Error 4: ' . mysql_error());
          $stock=mysql_fetch_array($res1);
          
          $pos_atrribs[$row]['Склад']=$stock['product_in_stock'];
          
          $q1 = "SELECT product_price FROM jos_vm_product_price WHERE product_id=$posid";
          $res1 = mysql_query($q1);
          if(!$res1) die('Error 4: ' . mysql_error());
          $price=mysql_fetch_array($res1);
          
          $pos_atrribs[$row]['Цена EUR']=$price['product_price'];
          $pos_atrribs[$row]['posid']=$posid;
          $row++;
        }
    
    function columnSort($sorted, $column) {
            for ($i=0; $i < sizeof($sorted)-1; $i++) 
            {
              for ($j=0; $j<sizeof($sorted)-1-$i; $j++)
                if ($sorted[$j][$column] > $sorted[$j+1][$column]) 
                {
                  $tmp = $sorted[$j];
                  $sorted[$j] = $sorted[$j+1];
                  $sorted[$j+1] = $tmp;
              }
            }
            return $sorted;
        }    
        $sorted = columnSort($pos_atrribs, $sort_by);
        unset($pos_atrribs);
        
        $new_attribs=array();
        $num=0;
        $matches=0;
        for ($i=0; $i < sizeof($sorted); $i++) 
        {
          if(substr($sorted[$i][$sort_by],-2)!='.1' && substr($sorted[$i][$sort_by],-2)!='.4')
          {
            $fs=(int)substr($sorted[$i][$sort_by],0,3);
            $fe=(int)substr($sorted[$i][$sort_by],-3);
            
            for ($j=0; $j<sizeof($sorted); $j++)
            { 
              $ss=(int)substr($sorted[$j][$sort_by],0,3);
              $se=(int)substr($sorted[$j][$sort_by],-3);
              
              if ($fe==$se && $fs<$ss) 
              {
                $new_attribs[$num]=array($sorted[$i],$sorted[$j]);
                $num++;
                $matches++;
              }
            }
          }
        }

    Джомло проект, в ходе запросов(11-46 строки) получает 250+ запросов к БД, и время выполнения только этого куска 40+ секунд. Далее сортировка тоже не слабая.

    kein, 11 Марта 2010

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

    −128.8

    1. 1
    2. 2
    #102 Проверка конфигурации PHP в консоли 
    $ php -r "phpinfo\(\);"

    php -i уже не в моде

    DrFreez, 11 Марта 2010

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

    +165

    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
    if ($check==0)
    {
      $query = "SELECT id, title, news, author, date FROM news ORDER BY id DESC LIMIT 10";
    }else{
      $query = "SELECT id, title, news, author, date FROM news ORDER BY id LIMIT 10";	
    }
    $result = mysql_query($query,$db);
    $_count=0;
    while($row=mysql_fetch_array($result))
    {  
    	$_count++;
    }
    
    $result = mysql_query($query,$db);
    while($row=mysql_fetch_array($result))
    {  
    ...

    Считаем кол-во строк в mysql-таблице

    qwase, 11 Марта 2010

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

    +78.5

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    //---Поправка на местное время--------------------------------------------------
    TDateTime F_IonTimeFiLa(TDateTime DTMoskau, T_RealXY LF_gr)
    {
        double LMos = 30.0;		//Moskau
        //TDateTime DT=DTMoskau+((LF_gr.x-LMos)/15.0-1.0)/24.0;     //-1 час декретный, а летнее или зимнее время!
        TDateTime DT = DTMoskau + (LF_gr.x - LMos) / 15.0 / 24.0;	//без -1 час декретный, а летнее или зимнее время!
        if (LF_gr.x > 180)
            DT -= 1.0;		//-1 сутки в западном полушарии
        return (DT);
    }

    Дас ист фантастищ!
    Код зависящий от погоды. Зимой и летом нужно перекомиливать.
    За пуп земли условно принят 30 меридиан условно поименованный Moskau (что какбе символизирует)
    Алгоритм построен на делении разности между заданной долготой и долготой "Москвы" на магическое 15... ну в общем вы сами всё видите.
    Приятного просмотра и не забудьте вытереть после себя...

    crox, 11 Марта 2010

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

    +60.5

    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
    //---сортировка по возрастанию методом выбора отдельно реальной и мнимой составляющих---------------
    bool F_Sorted(T_VectorComplex * VC, bool)
    {
        int i, j, m, N;
        double z;
        N = (*VC).size();
        for (j = N - 1; j > 0; j--) {
            m = j;
            z = real((*VC)[j]);
            for (i = j - 1; i >= 0; i--)
                if (z < real((*VC)[i])) {
                    z = real((*VC)[i]);
                    m = i;
                }
            if (j != m) {
                (*VC)[m] = T_Complex(real((*VC)[j]), imag((*VC)[m]));
                (*VC)[j] = T_Complex(z, imag((*VC)[j]));
            }
        }
        for (j = N - 1; j > 0; j--) {
            m = j;
            z = imag((*VC)[j]);
            for (i = j - 1; i >= 0; i--)
                if (z < imag((*VC)[i])) {
                    z = imag((*VC)[i]);
                    m = i;
                }
            if (j != m) {
                (*VC)[m] = T_Complex(real((*VC)[m]), imag((*VC)[j]));
                (*VC)[j] = T_Complex(real((*VC)[j]), z);
            }
        }
        return (true);
    }

    crox, 11 Марта 2010

    Комментарии (32)
  7. Си / Говнокод #2751

    +106.7

    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
    //Разбор принятых данных
    
      //===========================================================================
      //IP-адрес сервера
      //===========================================================================
       for(i=0;i<16;i++)
    	 {
    	  if(CtrlData[i] == ',')
    		break;
    	  else
    		buf[i] = CtrlData[i];
    	 }
    
       //разбираем первый байт адреса
       if(buf[1]=='.')      //вариант 1.
    	 {
    	  ip_buf[0] = ' ';
    	  ip_buf[1] = ' ';
    	  ip_buf[2] = buf[0];
    	  ip_buf[3] = buf[1];
    	  ip_ptr = 2;
    	 }
       else if(buf[2]=='.') //вариант 11.
    	 {
    	  ip_buf[0] = ' ';
    	  ip_buf[1] = buf[0];
    	  ip_buf[2] = buf[1];
    	  ip_buf[3] = buf[2];
    	  ip_ptr = 3;
    	 }
       else if(buf[3]=='.') //вариант 111.
    	 {
    	  for(i=0;i<4;i++)
    		ip_buf[i] = buf[i];
    	  ip_ptr = 4;
    	 }
       else
    	 {
    	  MessageBox(0, "Память устройства или файл содержит неверные данные","Ошибка", MB_ICONERROR|MB_TOPMOST|MB_OK|MB_TASKMODAL);
    	  return 1;
    	 }
    
       //разбираем второй байт адреса
       if(buf[ip_ptr+1]=='.')      //вариант 1.
    	 {
    	  ip_buf[4] = ' ';
    	  ip_buf[5] = ' ';
    	  ip_buf[6] = buf[ip_ptr];
    	  ip_buf[7] = buf[ip_ptr+1];
    	  ip_ptr += 2;
    	 }
       else if(buf[ip_ptr+2]=='.') //вариант 11.
    	 {
    	  ip_buf[4] = ' ';
    	  ip_buf[5] = buf[ip_ptr];
    	  ip_buf[6] = buf[ip_ptr+1];
    	  ip_buf[7] = buf[ip_ptr+2];
    	  ip_ptr += 3;
    	 }
       else if(buf[ip_ptr+3]=='.') //вариант 111.
    	 {
    	  ip_buf[4] = buf[ip_ptr];
    	  ip_buf[5] = buf[ip_ptr+1];
    	  ip_buf[6] = buf[ip_ptr+2];
    	  ip_buf[7] = buf[ip_ptr+3];
    	  ip_ptr += 4;
    	 }
       else
    	 {
    	  MessageBox(0, "Память устройства или файл содержит неверные данные","Ошибка", MB_ICONERROR|MB_TOPMOST|MB_OK|MB_TASKMODAL);
    	  return 1;
    	 }

    парсинг второй половины адреса сюда полностью не влез, но там ничего нового, я вас уверяю =)

    angry C nerd, 11 Марта 2010

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

    +160

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    # сегодняшнее число
    $date2 = date(
        "d.m.Y",
        mktime(0,   0,  0, date("m")  , date("d"), date("Y"))
        );

    psrustik, 11 Марта 2010

    Комментарии (22)
  9. Ruby / Говнокод #2749

    −116.6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    class Vector
      def -@
        map(&:-@)
      end
    end

    Код мой, говнокодом бы не назвал, но без улыбки точно не взглянешь на такое =)
    (тут определение унарного минуса через вызов того же унарного минуса у всех элементов вектора, Кэп)

    rakoth3d, 11 Марта 2010

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

    +72.7

    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
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    #ifndef Binary_h
    #define Binary_h
    
    #define B0 0
    #define B00 0
    #define B000 0
    #define B0000 0
    #define B00000 0
    #define B000000 0
    #define B0000000 0
    #define B00000000 0
    #define B1 1
    #define B01 1
    #define B001 1
    #define B0001 1
    #define B00001 1
    #define B000001 1
    #define B0000001 1
    #define B00000001 1
    #define B10 2
    #define B010 2
    #define B0010 2
    #define B00010 2
    #define B000010 2
    #define B0000010 2
    #define B00000010 2
    #define B11 3
    #define B011 3
    #define B0011 3
    #define B00011 3
    #define B000011 3
    #define B0000011 3
    #define B00000011 3
    #define B100 4
    #define B0100 4
    #define B00100 4
    #define B000100 4
    #define B0000100 4
    #define B00000100 4
    #define B101 5
    #define B0101 5
    #define B00101 5
    #define B000101 5
    #define B0000101 5
    #define B00000101 5
    #define B110 6
    #define B0110 6
    #define B00110 6
    #define B000110 6
    #define B0000110 6
    #define B00000110 6
    #define B111 7
    #define B0111 7
    #define B00111 7
    #define B000111 7
    #define B0000111 7
    #define B00000111 7
    #define B1000 8
    #define B01000 8
    #define B001000 8
    #define B0001000 8
    #define B00001000 8
    #define B1001 9
    #define B01001 9
    #define B001001 9
    #define B0001001 9
    #define B00001001 9
    #define B1010 10
    #define B01010 10
    #define B001010 10
    #define B0001010 10
    #define B00001010 10
    #define B1011 11
    #define B01011 11
    #define B001011 11
    #define B0001011 11
    #define B00001011 11
    #define B1100 12
    #define B01100 12
    #define B001100 12
    #define B0001100 12
    #define B00001100 12
    #define B1101 13
    #define B01101 13
    #define B001101 13
    #define B0001101 13
    #define B00001101 13
    #define B1110 14
    #define B01110 14
    #define B001110 14
    #define B0001110 14
    #define B00001110 14
    //и.т.д.до значения 255

    файл binary.h из пакета arduino

    danilissimus, 10 Марта 2010

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