1. Лучший говнокод

    В номинации:
    За время:
  2. PHP / Говнокод #1714

    +151

    1. 1
    @filemtime($cache_f) < time()-(600+((integer)rand(-100,100)))

    плавающий кеш? о_О

    gorvic, 28 Августа 2009

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

    +151

    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
    //клас для отправления писем через smtp
    //способ приминения
    //функция хеадерс(ящик куда отправлять,ящик откуда отправляется,почтовик(пример @yandex.ru), тема письма)
    //$headers = $post->headers($users[$i]."@yandex.ru",$users[$i]."@yandex.ru","@yandex.ru",$result['title']);
    //функция отправка (текст письма, заголовок, ящик получателя, адрес отправителя,имя пользователя, пароль, домен почтовика(пример yandex.ru))
    //$post->send($result_text,$headers,$users[$i]."@yandex.ru",$users[$i]."@yandex.ru",$users[$i],$pass[$i],"yandex.ru");
      class mailer
    {
    
        
      function get_data($smtp_conn)
      {
      $data="";
      while($str = fgets($smtp_conn,515))
      {
        $data .= $str;
        if(substr($str,3,1) == " ") { break; }
      }
      return $data;
      }
      
      
      
     function headers($to,$from,$prefix,$zag)
     { 
    $header="Date: ".date("D, j M Y G:i:s")." +0700\r\n";
    $header.="From: <".$from.">\r\n";
    $header.="X-Mailer: The Bat! (v3.99.3) Professional\r\n";
    $header.="X-Priority: 3 (Normal)\r\n";
    $header.="Message-ID: <172562218.".date("YmjHis").$prefix.">\r\n";
    $header.="To: <".$to.">\r\n";
    $header.="Subject: ".$zag."\r\n";
    $header.="MIME-Version: 1.0\r\n";
    $header.="Content-Type: text/html; charset=utf-8\r\n";
    $header.="Content-Transfer-Encoding: 8bit\r\n";
    return $header; 
     }
     
     
     
     function send($text, $header, $to, $from, $login , $pass, $mailer)
     {
     
      $fin = new mailer;
      
      
     $smtp_conn = fsockopen("smtp.".$mailer, 25,$errno, $errstr, 10);  
     $data = $fin->get_data($smtp_conn); 
      
     fputs($smtp_conn,"EHLO ".$mailer."\r\n");
    $data = $fin->get_data($smtp_conn);
    
    fputs($smtp_conn,"AUTH LOGIN\r\n");
    $data = $fin->get_data($smtp_conn);
    
    fputs($smtp_conn,base64_encode($login)."\r\n");
    $data = $fin->get_data($smtp_conn);
    
    fputs($smtp_conn,base64_encode($pass)."\r\n");
    $data = $fin->get_data($smtp_conn);
    
    fputs($smtp_conn,"MAIL FROM:".$from."\r\n");
    $data = $fin->get_data($smtp_conn);
    
    fputs($smtp_conn,"RCPT TO:".$to."\r\n");
    $data = $fin->get_data($smtp_conn);
    
    fputs($smtp_conn,"DATA\r\n");
    $data = $fin->get_data($smtp_conn);
    
    fputs($smtp_conn,$header."\r\n".$text."\r\n.\r\n");
    $data = $fin->get_data($smtp_conn);
    
    fputs($smtp_conn,"QUIT\r\n");
    $data = $fin->get_data($smtp_conn);
    
    
     }
    
    }

    клас для отправления писем через smtp

    dodther, 12 Августа 2009

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

    +151

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    public virtual Type GetFields() {
        //Must be overridden!!!
        return null;
    }
    
    public virtual Enum[] GetCompareFields() {
        //Must be overridden!!!
        return null;
    }

    Про абстракиные методы нам ещё не рассказывали :-D

    guest, 07 Августа 2009

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

    +151

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    private function GetUnitType($unitType)
    	{
    		if($unitType)
    			if(!UnitType::Exist($unitType))
    			{
    				Debug::error("WebPartCommentsList:: UnitType не найден");
    				exit;
    			}
    			else
    				$this->UnitType = UnitType::GetUnitTypeId($this->UnitType);
    	}

    проверка на существование сущности внутри класса, причём реально $unitType == $this->UnitType

    писал ...

    guest, 04 Августа 2009

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

    +151

    1. 1
    2. 2
    3. 3
    4. 4
    foreach ($polzavateli as $polzavatel){
    $i++;
    echo $polzavatel[$i];
    }

    профессиональный обход массива :)

    guest, 02 Августа 2009

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

    +151

    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
    // Защита от вставки HTML-кодов
    function filter($string)
    {
     $string=stripslashes($string); 
     $string=ereg_replace("<","&lt;",$string);
     $string=ereg_replace(">","&gt;",$string); 
     $string=ereg_replace('\\\"',"&quot;",$string);
     $string=ereg_replace("!","&#33;",$string);
     $string=ereg_replace("\r","",$string);
     $string=ereg_replace("\n","<BR>",$string);
     $string=ereg_replace("%","&#37;",$string);
     $string=ereg_replace("^ +","",$string);
     $string=ereg_replace(" +$","",$string);
     $string=ereg_replace(" +"," ",$string);
     $string=ereg_replace("\|"," ",$string);
     return $string;
    }

    Из LS Guestbook (http://linesoft.org)

    guest, 28 Июля 2009

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

    +151

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    <?php
    
    $code = "<table> <tr><td>1</td></tr> <tr><td>2</td></tr> </table>";
    
    
    $out_arr = array();
    while($line = substr( ($code = substr($code, strpos($code, ($s = "<tr><td>")) + strlen($s))), 0,
                          ($s = strpos($code, "</td></tr>"))) and $s and array_push($out_arr, $line) );
    
    print_r($out_arr);
    ?>

    лень было с регекспами заниматься ^_^
    упрощеный вариант

    guest, 27 Июля 2009

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

    +151

    1. 1
    @$sel = $_POST["sel"]?$_POST["sel"]:$_GET["sel"];

    из огромной кучи (продолжение следует)

    guest, 24 Июля 2009

    Комментарии (7)
  10. Pascal / Говнокод #1384

    +151

    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
    procedure TWorld.Update(dTime: Single);
    var
      i,j: integer;
      temp: TVector2f;
    begin
      for i:=0 to Count-1 do
      begin
        if Bodyes[i]^.Static then break else
        for j:=0 to Bodyes[i]^.Count-1 do
        begin
          Bodyes[i]^.AccumulateForces[j]:=Gravitation;
          temp:=Bodyes[i]^.Position[j];
          Bodyes[i]^.Position[j].x:=Bodyes[i]^.Position[j].x+
              (Bodyes[i]^.Position[j].x-Bodyes[i]^.OldPosition[j].x)+
               Bodyes[i]^.AccumulateForces[j].x*dTime*dTime;
          Bodyes[i]^.Position[j].y:=Bodyes[i]^.Position[j].y+
              (Bodyes[i]^.Position[j].y-Bodyes[i]^.OldPosition[j].y)+
               Bodyes[i]^.AccumulateForces[j].y*dTime*dTime;
          Bodyes[i]^.OldPosition[j]:=temp;
        end;
      end;
    end;

    Моделирование системы частиц через интегрирование Верлета

    guest, 19 Июля 2009

    Комментарии (1)
  11. Куча / Говнокод #1349

    +151

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

    Больше циклов по одним и тем же данным!

    guest, 09 Июля 2009

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