1. PHP / Говнокод #5225

    +158

    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
    if(($res = GetMysqlRes("SELECT id,name,price,anons2,colors,sizes,anons,content2,content,maker,title FROM {$oCfg->prefX}core WHERE top=".$pid." and act=1 ORDER BY date DESC LIMIT ".($pnum-1)*$eop.",".$eop."",array($pid),false)) != false)
    {
    while (($row = $db->fetch_row($res)) !== false)
    		{
    
    	...<script type='text/javascript'>
    		function chs".$row[0]."() {
    			document.getElementById(\"s_size".$row[0]."\").innerHTML = document.getElementById(\"sel_size".$row[0]."\").value;
    		}
    		function chc".$row[0]."() {
    			document.getElementById(\"s_color".$row[0]."\").innerHTML = document.getElementById(\"sel_color".$row[0]."\").value;
    		}
    	</script>...
    
    }
    }

    это находилось в цикле. К этому же потом обращались для добавления в корзину товара.

    Три точки значат что там есть еще код.

    P.S. Опять же привет мазе.

    De-Luxis, 12 Января 2011

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    $res = GetMysqlRes("SELECT anons2 FROM {$oCfg->prefX}core WHERE id=93");
    	while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) {
    		$to = $row[0];
    	}

    В CMS есть поле E-Mail, куда отправлять новые заказы.
    Так же есть поле anons, куда обычно пишется анонс статьи или страницы.
    В данном случае для хранения мыла, была создана отдельная строка anons2, туда же записывался адрес.

    P.S. Мазе привет.

    De-Luxis, 12 Января 2011

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if( $check_referer ) {
    	if( $_SERVER['HTTP_REFERER'] == ''and $_REQUEST['subaction'] != 'dologin') $allow_login = true;
    	elseif( clean_url( $_SERVER['HTTP_REFERER'] ) == clean_url( $_SERVER['HTTP_HOST'] ) ) $allow_login = true;
    }else {
    	$allow_login = true;
    }

    dle software

    DanxilLs, 12 Января 2011

    Комментарии (6)
  4. Си / Говнокод #5222

    +145

    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
    /* 
     * Тема: "Двумерные массивы"
     * Разработать программу для решения указанной ниже задачи.
     * Поиск строк или столбцов и преобразование матрицы оформить в виде подпрограммы.
     * Глобальные переменные не использовать.
     * В заданной матрице поменять местами столбцы, содержащие следующие элементы:
     * первый четный и последний нечетный.
     */
    #include <stdio.h>
    
    void raschet(int a[][20], int size, int *key) {
    	/*******************************************
    	 * Поиск столбцов и преобразование матрицы */
    	int i, j;							/* Индексы массива */
    	int buffer;							/* Временное место для копирования элементов столбца */
    	int first, second;					/* Первый и второй столбцы удовлетворяющие условию соответственно */
    	int flag = 1;						/* Переключатель найденых столбцов */
    	*key = 0;							/* Обнулить сообщение для главной программы о выполнении условия */
    	
    	
    	for(j=0; j<size; j++)						/* Перебор столбцов	*/
    		if(a[0][j]%2==0 && a[size-1][j]%2!=0) {	/* Если найден удовлетворяющий условию столбец	*/
    			if(flag == 1) {						/* Если найден первый столбец */
    				first = j;						/* Записать его положение в first */
    				flag = 2;						/* В случае нахождения след. столбца выполнится след. else if */
    				*key = 1;						/* Сообщить главной программе что найден 1 столбец уд. усл. */
    			}
    			else if(flag == 2) {				/* Если найден второй */
    				second = j;						/* Записать его положение в second */		
    				*key = 2;						/* Сообщение для главной программы о выполнении условия задачи */
    				for(i=0; i<size; i++) {			/* Перебор элементов столбцов*/
    					buffer=a[i][first];			/* Элемент столбца first копируется в buffer  */
    					a[i][first]=a[i][second];	/* Элемент столбца second копируется вместо эл-та first */
    					a[i][second]=buffer;		/* Элемент из buffer копируется в столбец second */
    				}
    				first = j;						/* Записать положение текущего столбца в first */
    			}
    		}		
    }	
    void main() {
    	int key;							/* Сообщение для главной программы о выполнении условия */
    	int i, j;							/* Индексы элементов масcивов */
    	int size = 8;							/* Размерность массива(матрицы) */ 
    	/***************
    	 * Ввод данных */
            int a[20][20] = {
                    {1, 2, 3, 4, 6, 8, 7, 2},
                    {1, 2, 3, 4, 1, 1, 2, 3},
                    {1, 2, 3, 4, 5, 3, 3, 3},
                    {2, 5, 7, 9, 3, 1, 2, 3},
                    {2, 5, 7, 9, 3, 1, 2, 3},
                    {2, 5, 7, 9, 3, 1, 2, 3},
                    {2, 5, 7, 9, 3, 1, 2, 3},
                    {2, 5, 7, 9, 3, 5, 2, 9}
            };  
    	/*************************
    	 * Вывод исходных данных */
    	system("cls");
    	printf("В заданной матрице поменять местами столбцы, содержащие следующие элементы:\n");
    	printf("первый четный и последний нечетный.\n");
    	printf("\nИсходная матрица имеет вид:\n");
    	for(i=0; i<size; i++) {
    		for (j=0; j<size; j++)
    			printf("%5d", a[i][j]);
    			printf("\n");
    	}
    	raschet(a, size, &key);				/* Функция поиска столбцов и преобразования матрицы */
    	/*********************
    	 * Вывод результата */ 	
    	if(key == 0)
    		printf("\nСтолбцов удовлетворяющих условию не найдено.");
    	else if(key == 1)
    		printf("\nНайден только один столбец удовлетворяющий условию.");
    	else {
    		printf("\nРезультирующая матрица имеет вид:\n");
    		for(i=0; i<size; i++) {
    			for (j=0; j<size; j++)
    			printf("%5d", a[i][j]);
    			printf("\n");
    		}
    	}
    	printf("\n\n");
    	printf("Конец!\n");
    	system("PAUSE");
    }

    http://ideone.com/3Qa2n оно выполняется !
    что тут говно, а что стерильно ?

    diimdeep , 12 Января 2011

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

    +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
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    <?php
    if ($res) {
        $i=0;
        while ( $arr = $res->fetchRow() )
        {   
            $id = $arr['id'];
            $userid = $arr['userid'];
            $alias = $arr['alias'];
            $startcity = $arr['startcity'];
            $endcity = $arr['endcity'];
            $godate = $arr['godate'];
            $gohour = $arr['gohour'];
            $gorecset = mapSetToWeekdays($arr['gorecset']);
            $recdays = implode(" ", $gorecset);     
        
            $godate = ereg_replace("Mon", $l['mo'], $godate);
            $godate = ereg_replace("Tue", $l['tu'], $godate);
            $godate = ereg_replace("Wed", $l['we'], $godate);
            $godate = ereg_replace("Thu", $l['th'], $godate);
            $godate = ereg_replace("Fri", $l['fr'], $godate);
            $godate = ereg_replace("Sat", $l['sa'], $godate);
            $godate = ereg_replace("Sun", $l['su'], $godate);
        
            $rides[$i] = array('id' => $id,
                                'userid' => $userid,
                                'alias' => $alias,
                                'startcity' => $startcity,
                                'endcity' => $endcity,
                                'gohour' => $gohour,
                                'godate' => $godate,
                                'recdays' => $recdays,                   
                                );
            $i++;
        }
        
        $SMARTY->assign("rides", $rides);
    }

    Этот чудесный пример говнокода написал один финн, с которым мне приходится работать вместе.
    Как видно, он, имея 4 года опыта разработки на PHP, так и не знает про extract(), compact(), а также про возможность использовать массивы в качестве аргументов str_replace. Хотя, в данном случае можно было просто написать $rides[] = $arr;

    rostislav, 12 Января 2011

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

    +130

    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
    char unsigned c;
    DWORD m;
    DWORD n;
    int i = 0;
    BOOL b = TRUE;
    
    HANDLE hFile = CreateFile(szFile, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL);
    if (hFile == INVALID_HANDLE_VALUE) 
    { 
    	printf("Could not open File");
    	return NULL;
    } 
    // узнаем размер файла
    while (b)
    {
    	b = ReadFile(hFile, &c, 1, &m, NULL);
    	if (m == 0)
    	{
    		printf("STOP ");
    		printf("%i\n", i);
    		break;
    	}
    	i++;
    }

    собственно узнаем размер файла, что тут еще скажешь)

    dIsoVi, 11 Января 2011

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

    +169

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    switch($type) {
    case 0:
    	$r_type = 0;
    	break;
    case 2:
    	$r_type = 2;
    	break;
    case 1:
    	$r_type = 1;
    	break;
    }

    нашел в своем старом коде.

    luethus, 11 Января 2011

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

    +122

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    /// <summary>
    /// I hate you guys.
    /// You guys are assholes.
    /// Especially author of this class.
    /// I hate him the most.
    /// </summary>
    public partial class ProfileEditor

    Semargl, 11 Января 2011

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

    +164

    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
    void Attr::setConvertedValue(std::string pValue)
    {
        /* ............. - BEGIN - Place the HTML code instead of the */
        /* plain values. This is needed since special XML characters      */
        /* might exist.                                                   */
        for(int i = 0; i < pValue.length(); i++)
        {
            int ascii = (int)pValue[i];
    
            if(!( (ascii == 32 ) ||
                  (ascii >= 48 && ascii <= 57) ||
                  (ascii >= 65 && ascii <= 90) ||
                  (ascii >= 97 && ascii <= 122) ) )
            {
                if( ascii < 0 )
                    ascii += 256;
    
                std::ostringstream stream;
                stream << ascii;
    
                std::string newString = stream.str();
                newString = "&#" + newString + ';';
    
                pValue.replace(i, 1, newString);
    
                i += newString.length() - 1;
            }
        }
        /* ............. - END - Place the HTML code instead of the */
        /* plain values. This is needed since special XML characters      */
        /* might exist.                                                   */
        mConvertedValue = pValue;
    }

    я стою на асфальте, ноги в лыжы абуты.

    мы эскайпим значения для ХМЛ.

    вы тут посмейтесь, а я пошел головой об стенку стучатся.

    ЗЫ пысано в Бразилии.

    Dummy00001, 11 Января 2011

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

    +153

    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
    function ini_size_to_bytes($value)
    {
    	$value = trim($value);
    	$retval = intval($value);
    
    	switch(strtolower($value[strlen($value) - 1]))
    	{
    		case 'g':
    			$retval *= 1024;
    			/* break missing intentionally */
    		case 'm':
    			$retval *= 1024;
    			/* break missing intentionally */
    		case 'k':
    			$retval *= 1024;
    			break;
    	}
    
    	return $retval;
    }

    vBulletin 4.0.3 (лицензионка, есть согласие на публикацию)

    Vitaly44, 11 Января 2011

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