1. C++ / Говнокод #19365

    0

    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
    float massiv[2];
    	massiv[0] = 1.05;
    	massiv[1] = 2;
    	float summa;
    	for(int i = 0; i < 2; i++)
    	{
    		summa = summa + massiv[i];
    	}
    	ShowMessage(summa);
    
    
    VS
    
    
    	float massiv[2];
    	massiv[0] = 1.05;
    	massiv[1] = 2;
    	float summa = massiv[0] + massiv[1];
    	ShowMessage(summa);

    Бывают же люди...

    не люблю вообще наговаривать на людей, но тут уж п..здец полный.
    не знаю - не сдержался, а может сегодня звезды не так стали.
    дали мне на сопровождение код, но это еще полбеды...
    вообщем суть вопроса - человеку дали (по всей видимости)
    задачу найти сумму двух чисел. вот что он написал: (см. в коде)

    Это вместо: (см. ниже в коде под надписью VERSUS)

    И так все 100 000 строк кода.
    Как говорится программист от Б-г-а. Под Б-г я имею ввиду Бориса Гребенщикова.
    (Не знаю как кто, а я лично не перевариваю его музыку)

    P.S. Автор сего произведения сейчас работает помощником директора. Чего-то я
    наверное не понимаю в этой жизни.

    P.P.S. Все совпадения с реальными людьми и событиями случайны. Говорю потому
    что страшно - еще уволят.

    expdev, 28 Января 2016

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

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    public ActionResult Exception()
    {
      throw new Exception("You better not to execute this!");
    }

    нашел говнокод, оставленный прошлым архитектором)

    govnokoder1488, 28 Января 2016

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

    0

    1. 1
    <cms:CMSWebPartZone ZoneID="AnalZone" runat="server" />

    ASP.NET, аналитика

    taburetka, 28 Января 2016

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

    +1

    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
    [2 Cubi Gold] <a target="_blank" href="index.php?vote=xtreme">xtremetop.com</a>
    <?php
    if ($_GET["vote"] == "xtreme")
    {
    $host='localhost';
    $database='pw';
    $user='root';
    $pswd='password';
     
    $dbh = mysql_connect($host, $user, $pswd) or die("Не могу соединиться с MySQL.");
    mysql_select_db($database) or die("Не могу подключиться к базе.");
     
    $search=CAuth::getLoggedName();
    $search=mysql_real_escape_string($search);
    $query="SELECT xtreme FROM `users` where name='".$search."'";
    $res =  mysql_query($query);
    $row = mysql_fetch_row($res);
    $dateVote=strtotime($row[0]);
    $dateVote2=$row[0];
    $nullDate="0000-00-00 00:00:00";
    $nullDate = strtotime($nullDate);
    $now=date("Y-m-d H:i:s");
    $now=mysql_real_escape_string($now);
    if($dateVote==$nullDate)
    {
        $query="UPDATE users SET xtreme='$now' WHERE name='$search'";
        $query = mysql_query($query);
        //запись в лог и редирект
        $log_file="/var/www/html/log.txt"; 
        $f=fopen($log_file,"a+");
        $ip=getenv("REMOTE_ADDR"); 
        fputs($f, "\n325325253\t" .date("d.m.Y H:i:s").'    '.$ip."\t".CAuth::getLoggedName().' '."\t1");
        fclose($f);
        echo "\nYou will be redirected to xtremetop...";
        echo "<meta http-equiv='Refresh' content='3;URL=http://google.ru'>";
    }
    else if ((strtotime($now)-strtotime($dateVote2)) < 21600)
    {
        echo "You can't vote. Please wait ",21600 - (strtotime($now)-strtotime($dateVote2))," seconds.";
    }
    else 
    {
        $query="UPDATE users SET xtreme='$now' WHERE name='$search'";
        $query = mysql_query($query);
        //запись в лог и редирект
        $log_file="/var/www/html/log.txt"; 
        $f=fopen($log_file,"a+");
        $ip=getenv("REMOTE_ADDR"); 
        fputs($f, "\n325325253\t" .date("d.m.Y H:i:s").'    '.$ip."\t".CAuth::getLoggedName().' '."\t1");
        fclose($f);
        echo "\nYou will be redirected to xtremetop...";
        echo "<meta http-equiv='Refresh' content='3;URL=http://google.ru'>";
    }
     
    }
     
    ?>

    Можете ли вы найти уязвимость?
    Ну хоть с этим у него хорошо )))

    xpoince, 28 Января 2016

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

    +4

    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
    #define RandomNumbers_count 16
    static unsigned char RandomNumbers[] =
    {
    	7, 167, 203, 54,
    	32, 78, 164, 112,
    	237, 182, 75, 96,
    	135, 13, 42, 27
    };
    static unsigned char CurrUrandPos = 0;
    void getURandom(void *buf, size_t size)
    {
    	if (size == 0)
    		return;
    	for (size_t i = 0; i < size; i++)
    	{
    		((char*)buf)[i] = RandomNumbers[CurrUrandPos];
    		CurrUrandPos = (CurrUrandPos + 1) % RandomNumbers_count;
    	}
    }

    Генератор псевдослучайных чисел: избавляемся от платформозависимого кода.

    tar_gz, 28 Января 2016

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

    −1

    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 ($Module == 'success') MessageSend(3, 'успешно', '/');
    else if ($Module == 'fail') MessageSend(1, 'Невозможно', '/');
    if ($_POST['LMI_PREREQUEST'] == 1) {
    if ($_POST['LMI_PAYEE_PURSE'] == 'Rкошелек') echo 'YES';
    } else {
    $key = $_POST['LMI_PAYEE_PURSE'].$_POST['LMI_PAYMENT_AMOUNT'].$_POST['LMI_PAYMENT_NO'].$_POST['LMI_MODE'].$_POST['LMI_SYS_INVS_NO'].$_POST['LMI_SYS_TRANS_NO'].$_POST['LMI_SYS_TRANS_DATE'].'Сикретный ключь'.$_POST['LMI_PAYER_PURSE'].$_POST['LMI_PAYER_WM'];	
    if (strtoupper(hash('sha256', $key)) != $_POST['LMI_HASH']) exit;
    $ID = FormChars($_POST['id']);
    $Row = mysqli_fetch_assoc(mysqli_query($CONNECT, "SELECT `login`, `webmoney` FROM `users` WHERE `id` = $ID"));
    if ($Row['login']) mysqli_query($CONNECT, "INSERT INTO `payment` VALUES('', '$Row[login]', $_POST[LMI_PAYMENT_AMOUNT], $_POST[Data])");
    
    $Rub = $Row['webmoney'] + $_POST['LMI_PAYMENT_AMOUNT'];
    
    mysqli_query($CONNECT, "UPDATE `users`  SET `webmoney` = $Rub WHERE `id` = $ID");
    
    }

    Ребят подскажите пожалуста , мне кажется этот код бред использовать . обратите внимание на последних 2 строчки , я их сам написал чтобы вывести общии баланс пользователя. все работает ! а предчуствие хреновое

    viktor, 28 Января 2016

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

    +3

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    function get_user_info($client, $param)
    {
    global $DATABASE;
    $getparam = $DATABASE()....;
    if($getparam)
    {
    return true;
    }
    else
    return false;
    }

    Друг показал в качестве "запроса в бд для получения инфы о юзерах с целью минимизировать код"

    AlexBrin, 27 Января 2016

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

    −88

    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
    // готовим выборку
    	ВыборкаПоСчетам = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Счет" + ЧастьБаланса);
    	Пока ВыборкаПоСчетам.Следующий() Цикл
    		ВыборкаСбк1 = ВыборкаПоСчетам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто" + ЧастьБаланса + "1");
    		Пока ВыборкаСбк1.Следующий() Цикл
    			ВыборкаСбк2 = ВыборкаСбк1.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто" + ЧастьБаланса + "2");
    			Пока ВыборкаСбк2.Следующий() Цикл
    				ВыборкаСбк3 = ВыборкаСбк2.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто" + ЧастьБаланса + "3");
    				Пока ВыборкаСбк3.Следующий() Цикл
    					ВыборкаПоКоррСчетам = ВыборкаСбк3.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Счет" + КоррЧастьБаланса);
    					Пока ВыборкаПоКоррСчетам.Следующий() Цикл
    						ВыборкаКоррСбк1 = ВыборкаПоКоррСчетам.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто" + КоррЧастьБаланса + "1");
    						Пока ВыборкаКоррСбк1.Следующий() Цикл
    							ВыборкаКоррСбк2 = ВыборкаКоррСбк1.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто" + КоррЧастьБаланса + "2");
    							Пока ВыборкаКоррСбк2.Следующий() Цикл
    								ВыборкаКоррСбк3 = ВыборкаКоррСбк2.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто" + КоррЧастьБаланса + "3");
    								Пока ВыборкаКоррСбк3.Следующий() Цикл
    									ВыборкаНалСчет = ВыборкаКоррСбк3.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "СчетКорректировок");
    									Пока ВыборкаНалСчет.Следующий() Цикл
    										ВыборкаНалСбк1 = ВыборкаНалСчет.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто1Корректировок");
    										Пока ВыборкаНалСбк1.Следующий() Цикл
    											ВыборкаНалСбк2 = ВыборкаНалСбк1.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто2Корректировок");
    											Пока ВыборкаНалСбк2.Следующий() Цикл
    												ВыборкаНалСбк3 = ВыборкаНалСбк2.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Субконто3Корректировок");
    												Пока ВыборкаНалСбк3.Следующий() Цикл
    													ВыборкаСделок = ВыборкаНалСбк3.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Сделка");
    													Пока ВыборкаСделок.Следующий() Цикл
    														ВыборкаДанных = ВыборкаСделок.Выбрать();
    														Если ВыборкаДанных.Следующий() Тогда
    															// Пара строк кода
    															Для Сч = 1 По 3 Цикл
    																Если ТипЗнч(ВыборкаДанных["Субконто" + ЧастьБаланса + Сч]) = Тип("СправочникСсылка.СтатьиЗатрат") Тогда
    																	// И тут еще пара строк кода
    																КонецЕсли;
    															КонецЦикла;
    														КонецЕсли;
    													КонецЦикла; // по сделкам
    												КонецЦикла; // по субконто3 корректировок
    											КонецЦикла; // по субконто2 корректировок
    										КонецЦикла; // по субконто1 корректировок
    									КонецЦикла; // по счетам корректировок
    								КонецЦикла; // по  корр субконто3
    							КонецЦикла; // по  корр субконто2
    						КонецЦикла; // по корр субконто1
    					КонецЦикла; // по корр счетам
    				КонецЦикла; // по субконто3
    			КонецЦикла; // по субконто2
    		КонецЦикла; // по субконто1
    	КонецЦикла; // по счетам

    Готовим выборку!

    grandatlant, 27 Января 2016

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

    +2

    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
    switch (button.Tag.ToString()) {
                    case "Ezp":
                    {
                        if (nowLayer.OpenedFiles.Count == 0)
                        {
                            nowLayer.OpenedFiles = new List<ExemplarFile> { new ExemplarFile("") };
                        }
                        if (nowLayer.OpenedFiles[0].EdinZemleps == null)
                        {
                            nowLayer.OpenedFiles[0].EdinZemleps = new List<EdinZemlep>();
                        }
                        var strName = ":ЕЗ" + (nowLayer.OpenedFiles[0].EdinZemleps.Count + 1);
                        nowLayer.OpenedFiles[0].EdinZemleps.Add(new EdinZemlep(strName) { Status = StatusEnum.Образуемый });
                        _ezpListTreeView.Add(new EzpTreeView { NameEzp = strName, ContourList = new List<ContourTreeView>(), ParcelList = new List<PartZuTreeView>(), IsEzpVisible = true, IsSelectedEzp = false } );
                        _dictionaryEzpTreeViewFile.Add(_ezpListTreeView[_ezpListTreeView.Count - 1], nowLayer.OpenedFiles[0]);
                        _dictionaryEzpTreeViewEdinZemlep.Add(_ezpListTreeView[_ezpListTreeView.Count - 1], nowLayer.OpenedFiles[0].EdinZemleps[nowLayer.OpenedFiles[0].EdinZemleps.Count - 1]);
                        break;
                    }
                    case "ContourEzp":
                    {
                        indexEz = TreeViewStackPanelMain.Children.IndexOf(((button.Parent as Grid).Parent as StackPanel).Parent as Grid) - _partZuListTreeView.Count;
                        var strName = (nowLayer.OpenedFiles[0].EdinZemleps[indexEz].CadNum != "" ? nowLayer.OpenedFiles[0].EdinZemleps[indexEz].CadNum : nowLayer.OpenedFiles[0].EdinZemleps[indexEz].LastName) + "(" + (nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Contours.Count + 1) + ")";
                        nowLayer.OpenedFiles[0].EdinZemleps[indexEz].AddContour(new Contour(strName) { Status = StatusEnum.Образуемый });
                        if (_ezpListTreeView[indexEz].ContourList == null)
                        {
                            _ezpListTreeView[indexEz].ContourList = new List<ContourTreeView>();
                        }
                        strName = nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Contours.Last().Name;
                        _ezpListTreeView[indexEz].ContourList.Add(new ContourTreeView { NameContour = strName, IsContourVisible = true, IsSelectedContour = false } );
                        for (var i = 0; i < _ezpListTreeView[indexEz].ContourList.Count; i++)
                        {
                            _ezpListTreeView[indexEz].ContourList[i].NameContour = nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Contours[i].Name;
                        }
                        break;
                    }
                    case "ZuEzp":
                    {
                        indexEz = TreeViewStackPanelMain.Children.IndexOf(((button.Parent as Grid).Parent as StackPanel).Parent as Grid) - _partZuListTreeView.Count;
                        var strName = ":ЗУ" + (nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels.Count + 1);
                        if (_ezpListTreeView[indexEz].ParcelList == null)
                        {
                            _ezpListTreeView[indexEz].ParcelList = new List<PartZuTreeView>();
                        }
                        nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels.Add(new Parcel(strName) { Status = StatusEnum.Образуемый });
                        _ezpListTreeView[indexEz].ParcelList.Add(new PartZuTreeView { NamePartZu = strName, ContourList = new List<ContourTreeView>(), PartList = new List<PartTreeView>(), IsPartZuVisible = true, IsSelectedPartZu = false });
                        _dictionaryPartZuTreeViewFile.Add(_ezpListTreeView[indexEz].ParcelList[_ezpListTreeView[indexEz].ParcelList.Count - 1], nowLayer.OpenedFiles[0]);
                        _dictionaryPartZuTreeViewParcel.Add(_ezpListTreeView[indexEz].ParcelList[_ezpListTreeView[indexEz].ParcelList.Count - 1], nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels[nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels.Count - 1]);
                        break;
                    }              
                    case "PartZuEzp":
                    {
                        indexEz = TreeViewStackPanelMain.Children.IndexOf(((((((button.Parent as Grid).Parent as StackPanel).Parent as Grid).Parent as StackPanel).Parent as Grid).Parent as StackPanel).Parent as Grid) - _partZuListTreeView.Count;
                        indexZu = ((((((button.Parent as Grid).Parent as StackPanel).Parent as Grid).Parent as StackPanel).Parent as Grid).Parent as StackPanel).Children.IndexOf((((((button.Parent as Grid).Parent as StackPanel).Parent as Grid).Parent as StackPanel).Parent as Grid));
                        var sbPrclName = nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels[indexZu].LastName + "/чзу" + (nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels[indexZu].Subparcels.Count + 1);
                        nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels[indexZu].Subparcels.Add(new Subparcel(sbPrclName) { Status = StatusEnum.Образуемый });
                        if (_ezpListTreeView[indexEz].ParcelList[indexZu].PartList == null)
                        {
                            _ezpListTreeView[indexEz].ParcelList[indexZu].PartList = new List<PartTreeView>();
                        }
                        _ezpListTreeView[indexEz].ParcelList[indexZu].PartList.Add(new PartTreeView { NamePart = sbPrclName, ContourList = new List<ContourTreeView>(), IsPartVisible = true, IsSelectedPart = _ezpListTreeView[indexEz].ParcelList[indexZu].IsSelectedPartZu });
                        _dictionaryPartTreeViewSubparcel.Add(_ezpListTreeView[indexEz].ParcelList[indexZu].PartList[_ezpListTreeView[indexEz].ParcelList[indexZu].PartList.Count - 1], nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels[indexZu].Subparcels[nowLayer.OpenedFiles[0].EdinZemleps[indexEz].Parcels[indexZu].Subparcels.Count - 1]);
                        break;
                    }

    и это продолжается, продолжается и продолжается....

    deathguard771, 27 Января 2016

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

    −94

    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 = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию(СтрокаТаблицы.Договор.Наименование).ПолучитьОбъект();
    			Если СтарыйЭлемент.Наименование <> СтарыйЭлемент1.Наименование Тогда
    				СтарыйЭлемент = СтарыйЭлемент1;
    			Иначе
    				СтарыйЭлемент = СтарыйЭлемент;
    			КонецЕсли;
    			СтарыйЭлемент.мфоДатаЗакрытия = Дата;
    		Иначе
    
    			СтарыйЭлемент = Справочники.ДоговорыКонтрагентов.НайтиПоКоду(СтрокаТаблицы.Договор.Код).ПолучитьОбъект();
    			СтарыйЭлемент1 = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию(СтрокаТаблицы.Договор.Наименование).ПолучитьОбъект();
    			Если СтарыйЭлемент.Наименование <> СтарыйЭлемент1.Наименование Тогда
    				СтарыйЭлемент = СтарыйЭлемент1;
    			Иначе
    				СтарыйЭлемент = СтарыйЭлемент;
    			КонецЕсли;
    			СтарыйЭлемент.мфоДатаЗакрытия = Дата("00010101");
    		КонецЕсли;
    		СтарыйЭлемент.Записать();

    Крайне сильное колдунство :) Все те же аутсорсеры :)

    planaric, 27 Января 2016

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