1. 1C / Говнокод #2264

    −110

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

    веселый цикл

    Vezunchik, 11 Декабря 2009

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

    +153.5

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    private function _createPath() {
          $_url = DEFAULT_URL;
          $_url = false === strpos($_url, 'http://') ? 'http://' . $_url : $_url;
          $_url = false === strpos($_url, '/', strlen($_url) - 1) ? $_url . '/' : $_url;
          return $_url . 'gateway.php?';
     }

    Давайте скидываться на киллеров. Заработаем больше :)

    asserte, 11 Декабря 2009

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

    +154.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
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    function addBotfortrain($who,$bot,$bot_name) {
        $db = mysql_fetch_array(mysql_query("SELECT hp_all FROM users WHERE login='$who'"));
        $all = mysql_fetch_array(mysql_query("SELECT max(id) as id FROM battles"));
        $bid = $all["id"]+1;
        mysql_unbuffered_query("INSERT INTO bot_temp(bot_name,hp,hp_all,battle_id,prototype,team,mana,mana_all,level) VALUES('$bot_name','".$db["hp_all"]."','".$db["hp_all"]."','$bid','$bot','2','$mana','$mana_all','0')");
        mysql_unbuffered_query("DELETE FROM team2 WHERE player='$bot'");
    }
    
    /*===============================================================*/
    function attack($who,$attacker,$dif) {
        $db=mysql_fetch_array(mysql_query("SELECT id FROM users WHERE login='$who'"));
        if(empty($ip)) {
            if (getenv('HTTP_X_FORWARDED_FOR')) {
                $ip=getenv('HTTP_X_FORWARDED_FOR');}
            else {$ip=getenv('REMOTE_ADDR');}}
        if($attacker == "gorg1") {
            $prototype = "Рядовой Горг";
            $name = "Рядовой Горг";}
        if($attacker == "gorg2") {
            $prototype = "Горг-Лейтенант";
            $name = "Горг-Лейтенант";}
        if($attacker == "gorg3") {
            $prototype = "Горг-Капитан";
            $name = "Горг-Капитан";}
        if($attacker == "gorg4") {
            $prototype = "Горг Подполковник";
            $name = "Горг Подполковник";}
        $mine_id=$db["id"];
        if( !mysql_fetch_array(mysql_query("SELECT id FROM zayavka WHERE creator = '".$mine_id."'")) ) {
            mysql_unbuffered_query("INSERT INTO zayavka(status,type,timeout,creator) 
    VALUES('3','1','3','$mine_id')");
            mysql_unbuffered_query("INSERT INTO team1(player,ip,battle_id,hitted,over) 
    VALUES('$who','$ip','$mine_id','0','0')");
            mysql_unbuffered_query("INSERT INTO team2(player,ip,battle_id,hitted,over) 
    VALUES('$prototype','$ip','$mine_id','0','0')");
            addBotfortrain($who,$prototype,$name);
            say("$who","<font color=RED>Системное сообщение:</font> ТРЕВОГА!!! На город напали Горги!!!",$who);
            goBattle($who);
        }
    }

    Обратите внимание на 34 строку (мы вставляем в таблицу данные). После вставки процедура addBotfortrain удаляет их.

    dicos, 11 Декабря 2009

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

    +158.3

    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
    function onbot($who) {
        $crime = 5;
        $crime_ar=array();
        for($i=0;$i<=$crime;$i++) {
            $crime_ar[$i]=$i;}
        for($i=$crime+1;$i<=100;$i++) {
            $crime_ar[$i]="empty";
        }
        $crime_numer=rand(0,100);
        $is_crime="0";
        for($i=0;$i<=100;$i++) {
            if($crime_numer==$crime_ar[$i]) {
                $is_crime="1";
            }
        }
        if($is_crime == 1) {
            $at = rand(1,4);
            if($at == 1) {$attacker = 'gorg1';}
            if($at == 2) {$attacker = 'gorg2';}
            if($at == 3) {$attacker = 'gorg3';}
            if($at == 4) {$attacker = 'gorg4';}
            attack($who,$attacker,'1');
            die();
        }
    }
    
    function attack($who,$attacker,$dif) {
        ..........................................
        if($attacker == "gorg1") {
            $prototype = "Рядовой Горг";
            $name = "Рядовой Горг";}
        if($attacker == "gorg2") {
            $prototype = "Горг-Лейтенант";
            $name = "Горг-Лейтенант";}
        if($attacker == "gorg3") {
            $prototype = "Горг-Капитан";
            $name = "Горг-Капитан";}
        if($attacker == "gorg4") {
            $prototype = "Горг Подполковник";
            $name = "Горг Подполковник";}
        $mine_id=$db["id"];
        // далее идет заполнение таблиц, для "блоя"
        }
    }

    Разбираюсь в онлайн игре. Архитектура самой игры на высшем уровне!

    dicos, 11 Декабря 2009

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

    +152.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
    <?php
    
    /*========================ПРОВЕРКА НА ПОЛУЧЕНИЕ АПА/ЛЕВЕЛА=======*/
    
    function testUp($who) {
    
        $data=mysql_fetch_array(mysql_query("SELECT level,exp,next_up,ups,money FROM users WHERE login='$who'"));
        $player_exp=$data["exp"];
        $level=$data["level"];
        $exp_table=array();
        $exp_table[0]="20";
        $exp_table[1]="75";
        $exp_table[2]="190";
        $exp_table[3]="390";
    .........................................................
        $exp_table[95]="37872105";
        $exp_table[96]="65916370";
        $exp_table[97]="121680315";
        $exp_table[98]="232883620";
        $exp_table[99]="454965645";
        $exp_table[100]="454965645";
    
        $stat_table=array();
        $stat_table[0]="4";
        $stat_table[1]="4";
        $stat_table[2]="4";
    ..........................................................
        $stat_table[98]="4";
        $stat_table[99]="4";
        $stat_table[100]="4";
    
        $money_table=array();
        $money_table[0]="2";
        $money_table[1]="2";
        $money_table[2]="6";
        $money_table[3]="12";
    .........................................................
        $money_table[97]="243864";
        $money_table[98]="478660";
        $money_table[99]="946412";
        $money_table[100]="1000000";
    
        $level_table=array();
        $level_table[0]="0";
        $level_table[1]=$exp_table[0];
        $level_table[2]=$exp_table[1];
        $level_table[3]=$exp_table[2];
        $level_table[4]=$exp_table[3];
        $level_table[5]=$exp_table[4];
    ......................................................
        $level_table[98]=$exp_table[97];
        $level_table[99]=$exp_table[98];
        $level_table[100]=$exp_table[99];
        $level_table[101]=$exp_table[100];
    // дальше идет малопонятный код
    ?>

    Делаю доработку браузерной игры от одного умельца.

    dicos, 11 Декабря 2009

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

    +100.5

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    if (Files[i].NeedCompression)
     {
           CompressFile(Files[i], Files[i].FileNameWithPath);
    }
           else
    {
           CompressFile(Files[i], Files[i].FileNameWithPath);
    }

    Если файл нужно сжать, сжимаем, или сжимаем :D
    ps:// 3 года назад писал подобие архиватора, за компрессию отвечала библиотека zlib.net

    nolka4, 11 Декабря 2009

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

    +159.6

    1. 1
    2. 2
    <p>Всего сообщений: <?=$msg->{0}[0]['count']?></p>
    <p>Новых: <?=$msg->{0}[0]['countNew']?></p>

    Вот честнейшее слово, именно так. Пока загадка, почему и откуда. как будет время — разберусь. Как будет время настроение — разберусь. Если кто-то наткнётся — прошу прощения.

    Shock, 10 Декабря 2009

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

    −161.4

    1. 1
    SELECT result=1 WHERE 1=0

    Тестируем что-то... Но что?

    bolkhovsky, 10 Декабря 2009

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

    +73.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
    String tempFileName = "someFileName";
    URL url = SomeClass.class.getClassLoader().getResource(".");
    File currentFolder = new File(url.getFile());
    if(currentFolder.isDirectory()){
       File parentFolder = currentFolder.getParentFile();
       for (String file:parentFolder.list()) {
          if(file.equals("temp")){
             File targetFolder = new File(parentFolder.getAbsolutePath()+"\\"+file+"\\"+tempFileName);
             if(!targetFolder.exists()) {
    	targetFolder.mkdir();
             }
             this.pathToTempFile = parentFolder.getAbsolutePath()+"\\"+file+"\\"+tempFileName;
          }
       }
    }

    Поиск директории для создания временных файлов вместо использования File.createTempFile(prefix, suffix)

    eroese, 10 Декабря 2009

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

    +135

    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
    private string GetDefaultPolicyNameFromRegistry()
        {
            string registryControlCenterKeyName;
            RegistryKey key;
            try
            {
                if (System.Runtime.InteropServices.Marshal.SizeOf(typeof(IntPtr)) == 8)
                    registryControlCenterKeyName = "SOFTWARE\\Wow6432Node\\xxx\\ControlCenter\\";
                else
                    registryControlCenterKeyName = "SOFTWARE\\xxx\\ControlCenter\\";
    
                key = Registry.LocalMachine.OpenSubKey(registryControlCenterKeyName); ;
    
            }
            catch (Exception ex)
            {
                throw new ArgumentException("Registry open 'ControlCenter' key error: " + ex.Message);
            }
    
           return (string)key.GetValue("DefaultPolicy");
        }

    Замечательно проверили на возможность исключений в ветке реестра с помощью try catch.. И также замечательно вынесли получение нужного значения из try catch
    Как результат - после обновления не открываются две страницы, на которых можно было бы создать, просмотреть и етк нужное значение в реестре. Нормальная работа приложения гарантировано заблокирована.

    Проверка битности системы тоже хорошая)

    eiskalt, 10 Декабря 2009

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