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

    +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
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    if (!defined('MODX_CORE_PATH')) {
        $modx_core_path= 'Z:/home/local/revo/core/';
        define('MODX_CORE_PATH', $modx_core_path);
    }
    if (!defined('MODX_PROCESSORS_PATH')) {
        $modx_processors_path= 'Z:/home/local/revo/core/model/modx/processors/';
        define('MODX_PROCESSORS_PATH', $modx_processors_path);
    }
    if (!defined('MODX_CONNECTORS_PATH')) {
        $modx_connectors_path= 'Z:/home/local/revo/connectors/';
        $modx_connectors_url= '/connectors/';
        define('MODX_CONNECTORS_PATH', $modx_connectors_path);
        define('MODX_CONNECTORS_URL', $modx_connectors_url);
    }
    if (!defined('MODX_MANAGER_PATH')) {
        $modx_manager_path= 'Z:/home/local/revo/manager/';
        $modx_manager_url= '/manager/';
        define('MODX_MANAGER_PATH', $modx_manager_path);
        define('MODX_MANAGER_URL', $modx_manager_url);
    }
    if (!defined('MODX_BASE_PATH')) {
        $modx_base_path= 'Z:/home/local/revo/';
        $modx_base_url= '/';
        define('MODX_BASE_PATH', $modx_base_path);
        define('MODX_BASE_URL', $modx_base_url);
    }

    CMS MODx Revolution
    core/config/config.inc.php
    Захотел потестить новую версию, про которую на оф.сайте рассказываются расчудесные вещи. Только поставил, а чё-то как-то уже стрёмно.

    telnet, 18 Декабря 2010

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

    +159

    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
    $one = $_POST["one"];
    $two = $_POST["two"];
    $three = $_POST["three"];
    $total = $_POST["total"];
    $total = $_POST["total1"];
     
     
    function Action($a, $b, $act)
    {
        switch($act)
        {
            case "add":
                return $a+$b;
            case "sub":
                return $a-$b;
            case "mult":
                return $a*$b;
            case "div":
                return $a/$b;
        }
    }
     
    /*Это проверка на то, какое действие выполняется первое
    total или total1(Если total равен умножению или делению то он и первый.
    А все остальное его не интересует)*/ 
    if ($total == "mult" || $total == "div")
    {
        $result = Action($one, $two, $total);
        $result = Action($result, $three, $total1);
    }
    else
    {
        $result = Action($two, $three, $total1);
        $result = Action($result, $one, $total);
    }
    echo $result;

    qbasic, 18 Декабря 2010

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

    +155

    1. 1
    2. 2
    3. 3
    if(file_exists("templates/".$config->design."/amxbans.css")) {
            $smarty->assign("design",$config->design);
    }

    Ненавижу женскую логику.

    theaqua, 18 Декабря 2010

    Комментарии (24)
  4. Pascal / Говнокод #4966

    +109

    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
    procedure RemoveDir(path: string);
    var
      sr: TSearchRec;
    begin
      if FindFirst(path + '\*.*', faAnyFile, sr) = 0 then
      begin
        repeat     
          if sr.Attr and faDirectory = 0 then
            DeleteFile(path + '\' + sr.name);
          else
              RemoveDir(path + '\' + sr.name);
        until
          FindNext(sr) <> 0;
      end;
      FindClose(sr);
      RemoveDirectory(PChar(path));
    end;

    История такова, писал я как-то программу по курсовому. (Это было еще года два-три назад, когда я про юнит тесты и различные технологии проектирования и разработки ничего не знал.) По задумки программа распаковывала некие файлы во временный каталог рядом с приложением и по завершению работы с ними удаляла эту папку вот этим методом. Итак, запустил я эту подпрограмму на выполнение для проверки ее работоспособности и смотрю в файловом менеджере, что папка успешно удалилась и все ок. Но вдруг студия начала жаловаться что нет каких-то файлов, я смотрю в файловый менеджер и вижу что файлы проекта программы исчезают буквально на глазах! Естественно я резко убиваю программу и далее начинаю восстанавливать исходники. Благо, что делал бэкапы и эта подпрограмма проработала все ничего, а ведь последствия могли быть еще больше. А мораль такая, нужно быть предельно внимательным, когда работаешь с удалением какой-либо информации.

    P.S. Нужно добавить проверку между 10 и 11 строкой:
    if (sr.Name <> '..') and (sr.Name <> '.') then

    vanished, 18 Декабря 2010

    Комментарии (20)
  5. Pascal / Говнокод #4965

    +113

    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 FUNC(XD: TXMLDocument; L: ShortString): IXMLNode;
    var
      c: integer;
      ln: IXMLNode;
      s: ShortString;
    begin
      c:=0;
      while c <> XD.DocumentElement.ChildNodes.Count-1 do
      begin
        if VarToStr(XD.DocumentElement.ChildNodes[c].Attributes['id']) = L then
        begin
          ln:=XD.DocumentElement.ChildNodes[c];
          c:=XD.DocumentElement.ChildNodes.Count-1
        end else
        begin
          c:=c+1; {DEBUG(VarToStr(XD.DocumentElement.ChildNodes[c].Attributes['id'],L) } 
        end
      end;
      result:=ln
    end;

    К слову о невнимательности и "непримеченных слонах". Итак задачка: перебором найти в наборе данных нужную строку и вернуть в итоговый результате элемент набора данных. Используем код (выше). По невнимательности своей я допустил в алгоритме ошибку и функция работала несколько некорректно. Перед Вами её изначальный вариант, до исправления. Если вкратце, то баг заключался в том, что функция не читала последний элемент XML-документа. Называется, нефиг было мудрить с алгоритмом. По сути там надо убрать из двух мест "-1". Но пока я докапывался до сути ошибки, я написал тестовую функцию, сравнивающую две строки и выводящую результат сравнения в окно сообщения. Назовём её DEBUG. И... Началось непонятное. Функция выдавала сообщение, значит результаты, как видно по алгоритму, не равны, но она выдавала РАВЕНСТВО! Мозг взрывается, ломаются представления о математике и рациональности вообще!

    Xander_Bass, 18 Декабря 2010

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

    +127

    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
    //TODO: Delete the comment after a successful test.
    
    var Client = new TcpClient();
    
    int a = num._.i.i.i.i.i;
    int b = num._.i.i.i.u.d;
    int c = (((num)(a + b)).l++.u+b).u.i.i;
    
    // port = 726
    int port = a + b + c;
    
    // ips = "127.0.0.1"
    string ips = ip._.i.u.i.i.i.u.d.d.d.s['.'].s['.'].s['.'].i.s;
    
    Client.Connect(ips, port);

    Very hard-hard code!

    vanished, 18 Декабря 2010

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

    +154

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $src = fopen("0.txt", 'r');
    while(!feof($src))
    {
            $line[] = fgets($src);
            $line++;
    }

    Интересно чему в конце будет равно $line? :)

    Xander_Bass, 17 Декабря 2010

    Комментарии (47)
  8. Java / Говнокод #4962

    +77

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    private String get4DigitRandom() {
            final int length = 4;
            int number = (int) (Math.random() * Math.pow(10, length));
            StringBuilder sb = new StringBuilder();
            for (int i = length; i > 0; i--)
                sb.append("" + (int) (number / Math.pow(10, i - 1)) % 10);
    
            return sb.toString();
        }

    yozh, 17 Декабря 2010

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

    +119

    1. 1
    public string flag = "no";

    Golovastick, 17 Декабря 2010

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

    +173

    1. 1
    AX=pow(A[i].r.get_x()*A[i].r.get_x(),0.5);

    Берем модуль числа.

    Taus, 17 Декабря 2010

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