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

    +34

    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
    #include "xsmell.hpp"
    #include <iostream>
    
    TAG(html,  NO_ATTRIBS);
    TAG(head,  NO_ATTRIBS);
    TAG(title, NO_ATTRIBS);
    TAG(body,  NO_ATTRIBS);
    TAG(p,     NO_ATTRIBS);
    TAG(a,     ATTRIB(href));
    TAG(img,   ATTRIB(src), ATTRIB(alt));
    
    int main()
    {
        using namespace xsmell;
    
        document doc = 
            _
            <html>_
                <head>_
                    <title>"XSMELL demo"<!title>_
                <!head>_
                <body>_
                    <p>"Yesssssssssssssssss!"<!p>_
                    <img .src("chucknorris.png") .alt("sneezing eyes open")>_ <!img>_
                <!body>_
            <!html>
            _;
    
        std::cout << doc << '\n';
    
        return 0;
    }

    C++ умеет HTML не хуже этих ваших похапешечек ;)

    https://bitbucket.org/edd/xsmell/src

    bormand, 07 Августа 2012

    Комментарии (259)
  2. Perl / Говнокод #11547

    −139

    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
    #!/usr/bin/perl -w
    
    use strict;
    use warnings;
    use diagnostics;
    use LWP::Simple;
    
    binmode(STDOUT, ":utf8");
    
    my $url = 'http://govnokod.ru/comments';
    my $document = get $url;  die "Couldn't get $url" unless defined $document;
    $document =~ s/\n/ /g;
    $document =~ s/\h+/ /g;
    my @arr = ( $document =~ m/(?<=\<strong class="entry-author">)(.*?)(?<=\<a class="answer")/gi );
    my $str;
    my @sink;
    
    foreach my $val (@arr) {
    	$val =~ m/(?<=\>)(.*?)(?=\<\/a\>)/i;
    	$str = "Author:    ".$1;
    	$val =~ m/(?<=published" title\=")(.*?)(?=")/i;
    	( my $dt, my $tm ) = split('T', $1);
    	$str = $str . "\nDate:      " . $dt;
    	$str = $str . "\nTime:      " . $tm;
    	$val =~ m/(?<=\<\/abbr\> \<a href\=")(.*?)(?=" name\=)/i;
    	$str = $str."\nLink:      ". $1;
    	$val =~ m/(?<=\<div class\="entry-comment">)(.*?)(?=\<\/div\>)/i;
    	$str = $str . "\nComment:   " . str_formater($1);
    	push(@sink, $str);
    }
    
    @sink = reverse (@sink);
    foreach my $v (@sink) {
    	print ("\n".("+" x 81)."\n"."$v\n");
    }
    print ("\n".("+" x 81)."\n\n");
    
    sub str_formater {
    	my $str = $_[0];
    	my $res="";
    	my $cmt_len = 69;
    	my $cmt_indent = 11;
    	while (1) {
    		if (length($str)<=$cmt_len) {
    			return $res . $str;
    		}
    		$res = $res . substr($str,0, $cmt_len) . "\n" . (" " x $cmt_indent);
    		$str = substr($str, $cmt_len);
    	}
    	return $res;
    }
    exit 0;

    Давненько перловку не заваривал...

    sayidandrtfm, 06 Августа 2012

    Комментарии (18)
  3. Java / Говнокод #11545

    +70

    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
    public static class TrollException extends RuntimeException {
            @Override
            public String getMessage() {
                throw new TrollException();
            }
    
            @Override
            public String getLocalizedMessage() {
                throw new TrollException();
            }
    
            @Override
            public Throwable getCause() {
                throw new TrollException();
            }
    
            @Override
            public synchronized Throwable initCause(Throwable cause) {
                throw new TrollException();
            }
    
            @Override
            public String toString() {
                throw new TrollException();
            }
    
            @Override
            public void printStackTrace() {
                throw new TrollException();
            }
    
            @Override
            public void printStackTrace(PrintStream s) {
                throw new TrollException();
            }
    
            @Override
            public void printStackTrace(PrintWriter s) {
                throw new TrollException();
            }
    
            @Override
            public synchronized Throwable fillInStackTrace() {
                throw new TrollException();
            }
    
            @Override
            public StackTraceElement[] getStackTrace() {
                throw new TrollException();
            }
    
            @Override
            public void setStackTrace(StackTraceElement[] stackTrace) {
                throw new TrollException();
            }
        }

    kadavrrr, 06 Августа 2012

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

    +47

    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 ($num_rows2>0) {
    	$raw2=mysql_fetch_array($sth2, MYSQL_ASSOC);
    	$desc=$raw2['desc'];
    	$sector =  "$desc";//O-o-o!
    } 
    //далее $desc нигде не используется, равно как и $raw2
    //и ещё:
    	$sid=$raw['id'];
    	$sector=$raw['sector'];
    	$selind='';
    	if ($sector==$sid) { $selind='selected'; }
    	echo "<option value='$sid' $selind >$sector</option>";
    
    //и так по всему коду
    //А ЭТО вместо темплэйта от 30 до 150 include за один раз с огрызками HTML и PHP
    <?php 
    require_once('includes/core.php');      // connection, config
    $is_index_page = true; // add this variable to check that we are on default index page (#2907)
    require_once('header.php');
    require_once('menu.php');
    include('homepage.php');
    . . .
    . . .
    require_once('footer.php');
    
    ?>

    Реальный кусок Хадж-кода. В комплекте более 3500 файлов перекрёстно инклюдящих друг друга. Действительно "Индусский код" оплачивается построчно..., дёшево, долго, сердито.

    virtual_cia, 06 Августа 2012

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

    +55

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if($contact == null){
       $msg = JText::_('INSERT_CONTACT_DETAILS');
       if($contact == null){
        $mainframe->redirect('index.php?option=com_xxx&act=Agents',Text::_($msg).$user->name);
       }
       return;
     }

    Правильно грят: бережённого бог бережёт :)

    virtual_cia, 06 Августа 2012

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

    +64

    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
    <?php
    /* File: config.php */
    $ea_hot_color = "#F06000";
    $ea_fulllocation = "1";
    $ea_curconverter = "1";
    $ea_show_hits = "1";
    $ea_show_created_date = "1";
    //и т.д.~300 строк
    
    // ============================
    /* File: config.class.php */
    class EAConf{
    /*
    ...
    */
      function EAConf(){
       require('config.php');
       $allvars=get_defined_vars();
       $names=array_keys($allvars);
       foreach($names as $name){
        if(substr($name,0,2)=="ea") $this->$name=$allvars[$name];
       }
      }
    
    /*
    ...
    */
    }

    Какая глубина мысли! Смело, нетривиально!

    virtual_cia, 06 Августа 2012

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

    +70

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    } catch (CacheException e) {
    	e.printStackTrace();
    } catch (Exception e) {
    	e.printStackTrace();
    }

    Привет из Индии

    dzagy, 06 Августа 2012

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

    +79

    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
    if (scannedLiteralType.compareTo("<!") == 0) {
              if (textPosition + 5 < text.length) {
                if (scannedByte == (byte)'[') {
                  if (text[textPosition] == (byte)'C') {
                    if (text[textPosition + 1] == (byte)'D') {
                      if (text[textPosition + 2] == (byte)'A') {
                        if (text[textPosition + 3] == (byte)'T') {
                          if (text[textPosition + 4] == (byte)'A') {
                            if (text[textPosition + 5] == (byte)'[') {
                              scanByte();
                              scanByte();
                              scanByte();
                              scanByte();
                              scanByte();
                              scanByte();
                              scanByte();
                              Element childNode = createNode("");
                              node.addChild(childNode);
                              scanBytes("]]>".getBytes(), false);
                              byte[] bytes = new byte[literalPosition - 1];
                              System.arraycopy(literal, 0, bytes, 0, literalPosition - 1);
                              try {
                                String string = new String(bytes, encoding);
                                childNode.setValue(string);
                                childNode.setIdentifier("<![SDATA[]]");
                              } catch (Exception exception) {
                                childNode.setValue(bytes);
                                childNode.setIdentifier("<![CDATA[]]");
                              }
                              scanByte();
                              scanByte();
                              scanByte();
                              scanToken();
                              continue;
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }

    проверка "CDATA"

    nesferatos, 06 Августа 2012

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

    +58

    1. 1
    2. 2
    3. 3
    if( $vv || $vv === '0' ){
        $param = htmlspecialchars( $vv, ENT_QUOTES );
    }

    htmlspecialchars, видимо, творит с нулями что-то особенное

    somnambulism, 06 Августа 2012

    Комментарии (5)
  10. Куча / Говнокод #11538

    +123

    1. 1
    + "cast(cast(cast([" + tableName + "].[id_0] as float) as numeric(18,2)) as nvarchar(100))"+

    USB, 06 Августа 2012

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