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

    +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
    public static long NormalizeIp(this long ip)
            {
                var ipAddress = new IPAddress(Math.Abs(ip)).ToString();
                return ipAddress.IpToLong();
            }
    
    
            static long IpToLong(this string ip)
            {
                double num = 0;
                if (!string.IsNullOrEmpty(ip))
                {
                    var ipBytes = ip.Split('.');
                    for (var i = ipBytes.Length - 1; i >= 0; i--)
                    {
                        num += ((int.Parse(ipBytes[i]) % 256) * Math.Pow(256, (3 - i)));
                    }
                }
    
                return (long)num;
    
            }

    Получаем IP вот таким вот методом - BitConverter.ToInt32(IPAddress.Parse(ip) .GetAddressBytes(), 0)
    Приводим к типу long (неявным методом, т.е. long a = ip_address) и в таком виде сохраняем в базу как bigint (int64)
    Затем берем его из базы и пытаемся провернуть с ним вот такой NormalizeIp
    Печаль (

    bopoh, 30 Апреля 2016

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

    −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
    Немного о пропертях
    
    "Лично мне свойства не нравятся и я был бы рад, если бы в Microsoft решили убрать
    их поддержку из .NET Framework и сопутствующих языков программирования."
    
    "Я считаю, что разработчики используют свойства намного чаще, чем следовало
    бы. Достаточно внимательно изучить список различий между свойствами и поля-
    ми, чтобы понять: есть очень немного ситуаций, в которых определение свойства
    действительно полезно, удобно и не запутывает разработчика. Единственная при-
    влекательная черта свойств — упрощенный синтаксис, все остальное — недостатки,
    в числе которых потеря в производительности и читабельности кода. Если бы я
    участвовал в разработке .NET Framework и компиляторов, я бы вообще отказался от
    свойств, вместо этого я предоставил бы разработчикам полную свободу реализации
    методов GetXxx и SetXxx. Позже создатели компиляторов могли бы предоставить
    особый упрощенный синтаксис вызова этих методов, но только при условии его
    отличия от синтаксиса обращения к полям, чтобы программист четко понимал, что
    выполняется вызов метода!"
    
    Джефри Рихтер

    Срач объявляется открытым

    kegdan, 29 Апреля 2016

    Комментарии (356)
  3. JavaScript / Говнокод #19902

    +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
    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
    if (aKeqboard[i][j] == 'Пробел') {
                            var sLang = storage.get("language");
                            sContent += '<td width="770" height="78" align="center"><div id="search_btn_' + (id++) + '" class="k_s_' + sLang + ' k_f k_c_b" style="color: transparent;" onclick=\"opacit(' + id + ');\"></div></td>';
                        }
                        else
    
                            if (aKeqboard[i][j] == 'ПробелENG') {
                                var sLang = storage.get("language");
                                sContent += '<td width="703" height="78" align="center"><div id="search_btn_' + (id++) + '" class="k_s_eng_' + sLang + ' k_f k_c_b" style="color: transparent;" onclick=\"opacit_ALE(' + id + ');\"></div></td>';
                            }
                            else
    
                                if (aKeqboard[i][j] == 'Shiftrus' || aKeqboard[i][j] == 'Shiftrusm' || aKeqboard[i][j] == 'Shifteng' || aKeqboard[i][j] == 'Shiftengm')
    
                                    sContent += '<td width="167" height="78" align="center"><div id="search_btn_' + (id++) + '" class="shift_' + sLang + '" style="color: transparent;" onclick=\"opacit(' + id + ');\"></div></td>';
    
                                else
    
                                    if (aKeqboard[i][j] == 'mShiftrus' || aKeqboard[i][j] == 'mShiftrusm' || aKeqboard[i][j] == 'mShifteng' || aKeqboard[i][j] == 'mShiftengm')
    
                                        sContent += '<td width="77" height="78" align="center"><div id="search_btn_' + (id++) + '" class="mshift" style="color: transparent;" onclick=\"opacit(' + id + ');\"></div></td>';
    
                                    else
    
                                        if (aKeqboard[i][j] == 'Eng')
    
                                            sContent += '<td width="123" height="78" align="center"><div id="search_btn_' + (id++) + '" class="eng_button" onclick=\"opacit(' + id + ');\"></div></td>';
    
                                        else
    
                                            if (aKeqboard[i][j] == 'Рус')
    
                                                sContent += '<td width="212" height="78" align="center"><div id="search_btn_' + (id++) + '" class="rus_button" onclick=\"opacit_ALR(' + id + ');\"></div></td>';
    
                                            else
    
                                                if (aKeqboard[i][j] == 'Рус2') {
                                                    if (this._statusEng == true) { sContent += '<td width="167" height="78" align="center"><div id="search_btn_' + (id++) + '" class="rus_button2_eng" onclick=\"opacit_ALABC(' + id + ');\"></div></td>'; }
                                                    else if (this._statusEng == false) { sContent += '<td width="167" height="78" align="center"><div id="search_btn_' + (id++) + '" class="rus_button2" onclick=\"opacit_ALR(' + id + ');\"></div></td>'; }
    
                                                }
    
                                                else
    
                                                    if (aKeqboard[i][j] == '.,?123') {
    
                                                        if (this._statusEng == true) { sContent += '<td width="167" height="78" align="center"><div id="search_btn_' + (id++) + '" class="digit123" onclick=\"opacit_ALDABC(' + id + ');\"></div></td>'; }
                                                        else if (this._statusEng == false) { sContent += '<td width="167" height="78" align="center"><div id="search_btn_' + (id++) + '" class="digit123" onclick=\"opacit_ALD(' + id + ');\"></div></td>'; }
                                                    }
    
                                                    else
    
    
                                                        if (aKeqboard[i][j] == ' ')
                                                            sContent += '<td width="0" height="78" align="center"><div id="search_btn_' + (id++) + '" class="k_s_' + sLang + ' k_f k_c_b" onclick=\"opacit(' + id + ');\" style="display: none;"></div></td>';
    
                                                        else
    
                                                            if (aKeqboard[i][j] == '...')
                                                                sContent += '<td width="75" height="78" align="center"><div id="search_btn_' + (id++) + '" class="k_s_' + sLang + ' k_f k_c_b" onclick=\"opacit(' + id + ');\" style="display: none;"></div></td>';
    
                                                            else
    
                                                                if (aKeqboard[i][j] == 'Стереть') {
                                                                    var sLang = storage.get("language");
                                                                    sContent += '<td width="120" height="78" align="center"><div id="search_btn_' + (id++) + '" class="k_b_' + sLang + ' k_f_del k_c_w" onclick=\"opacit(' + id + ' );\"></div></td>';
                                                                }
                                                                else
    
                                                                    if (aKeqboard[i][j].length > 1) {
                                                                        sContent += '<td width="167" height="70" align="center"><div id="search_btn_' + (id++) + '" class="k_b_green k_f k_c_w" onclick=\"opacit(' + id + ');\"></div></td>';
    
                                                                    }
                                                                    else {
                                                                        sContent += '<td width="80" height="70" align="center"><div id="search_btn_' + (id++) + '" class="k_v k_f k_c_b" onclick=\"opacit(' + id + ');\"></div></td>';
                                                                    }
                    }

    lorines, 29 Апреля 2016

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

    −10

    1. 1
    ХАБР ПОМЕР!

    d_fomenok, 29 Апреля 2016

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

    −2

    1. 1
    https://toster.ru/q/315470

    Деанон пидара без СМС.

    Vasiliy, 28 Апреля 2016

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

    +7

    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
    #include <iostream>
    
    using namespace std;
    
    class Foo {
    public:
        operator int() const {
            cout<<"1";
            return *this;
        }
    };
    
    int main() {
        Foo foo;
        int i = foo;
    
        cout<<i<<endl;
        return 0;
    }

    govnokod3r, 28 Апреля 2016

    Комментарии (13)
  7. C# / Говнокод #19896

    +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
    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
    using System;
    
    namespace ConsoleApplication13
    {
        class Program
        {
            private static void Main(string[] args)
            {
                var s = new MyStruct(1);
    
                Console.WriteLine(s);
    
                s.Change(2);
                
                Console.WriteLine(s);
    
                ((IChangable)s).Change(3);
    
                Console.WriteLine(s);
    
                var o = (IChangable) s;
    
                ((MyStruct) o).Change(4);
    
                Console.WriteLine(o);
    
            }
    
            interface IChangable
            {
                void Change(int x);
            }
    
            struct MyStruct:IChangable
            {
                private int _value;
    
                public MyStruct(int x)
                {
                    _value = x;
                }
    
                public void Change(int x)
                {
                    _value = x;
                }
    
                public override string ToString()
                {
                    return "Value is " +_value;
                }
            }
        }
    }

    Угадываем что выведет программа и почему

    kegdan, 28 Апреля 2016

    Комментарии (92)
  8. JavaScript / Говнокод #19895

    +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
    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
    function captcha_answer (res) {
    	if (res.email == 0) {
    		$('#email').css('border','1px solid #C5C5C5');
    		$(".email").text("");
    		$(".email").hide();
    	}
    	if (res.email == 1) {
    		$('#email').css('border','1px solid red');
    		$(".email").text("E-mail слишком короткий");
    		$(".email").show();
    	}
    	if (res.email == 2) {
    		$('#email').css('border','1px solid red');
    		$(".email").text("E-mail слишком длинный");
    		$(".email").show();
    	}
    	if (res.email == 3) {
    		$('#email').css('border','1px solid red');
    		$(".email").text("Некорректный E-mail");
    		$(".email").show();
    	}
    	if (res.email == 4) {
    		$('#email').css('border','1px solid red');
    		$(".email").text("E-mail занят");
    		$(".email").show();
    	}
    	
    	if (res.nickname == 0) {
    		$('#nickname').css('border','1px solid #C5C5C5');
    		$(".nickname").text("");
    		$(".nickname").hide();
    	}
    	if (res.nickname == 1) {
    		$('#nickname').css('border','1px solid red');
    		$(".nickname").text("Ник слишком короткий");
    		$(".nickname").show();
    	}
    	if (res.nickname == 2) {
    		$('#nickname').css('border','1px solid red');
    		$(".nickname").text("Ник слишком длинный");
    		$(".nickname").show();
    	}
    	if (res.nickname == 3) {
    		$('#nickname').css('border','1px solid red');
    		$(".nickname").text("Ник занят");
    		$(".nickname").show();
    	}
    	
    	if (res.password_1 == 0) {
    		$('#password_1').css('border','1px solid #C5C5C5');
    		$(".password_1").text("");
    		$(".password_1").hide();
    	}
    	if (res.password_1 == 1) {
    		$('#password_1').css('border','1px solid red');
    		$(".password_1").text("Пароль слишком короткий");
    		$(".password_1").show();
    	}
    	if (res.password_1 == 2) {
    		$('#password_1').css('border','1px solid red');
    		$(".password_1").text("Пароль слишком длинный");
    		$(".password_1").show();
    	}
    	
    	if (res.password_2 == 0) {
    		$('#password_2').css('border','1px solid #C5C5C5');
    		$(".password_2").text("");
    		$(".password_2").hide();
    	}
    	if (res.password_2 == 1) {
    		$('#password_2').css('border','1px solid red');
    		$(".password_2").text("");
    		$(".password_2").show();
    	}
    	if (res.password_2 == 2) {
    		$('#password_2').css('border','1px solid red');
    		$(".password_2").text("Пароли не совпадают");
    		$(".password_2").show();
    	}
    };

    Есть скрипт, он аяксом посылает запрос на страницу, скрипт "отвечает" в формате json, ответы типа {"email":"1"} а вот это собственно "расшифровка" ответов :)

    slowpoke59rus, 27 Апреля 2016

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

    +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
    $vv = $_GET['new'];
    $v1 = $_GET['1'];
    $v2 = $_GET['2'];
    $v3 = $_GET['3'];
    $v4 = $_GET['4'];
    $v5 = $_GET['5'];
    $v6 = $_GET['6'];
    $v7 = $_GET['7'];
    $v8 = $_GET['8'];
    $v9 = $_GET['9'];
    $v10 = $_GET['10'];
    $v11 = $_GET['11'];
    $v12 = $_GET['12'];
    if (mb_strlen($vv) >= 1) {
    	mysql_query ("INSERT INTO vote (title, votes) VALUES ('$vv', '0')");
    	header('Location: /index.php');
    	exit;
    }
    if (mb_strlen($v1) >= 1 or mb_strlen($v2) >= 1 or mb_strlen($v3) >= 1 or mb_strlen($v4) >= 1 or mb_strlen($v5) >= 1 or mb_strlen($v6) >= 1 or mb_strlen($v7) >= 1 or mb_strlen($v8) >= 1 or mb_strlen($v9) >= 1 or mb_strlen($v10) >= 1 or mb_strlen($v11) >= 1 or mb_strlen($v12) >= 1) {
    	mysql_query ("UPDATE vote SET title='$v1' WHERE id='1'");
    	mysql_query ("UPDATE vote SET title='$v2' WHERE id='2'");
    	mysql_query ("UPDATE vote SET title='$v3' WHERE id='3'");
    	mysql_query ("UPDATE vote SET title='$v4' WHERE id='4'");
    	mysql_query ("UPDATE vote SET title='$v5' WHERE id='5'");
    	mysql_query ("UPDATE vote SET title='$v6' WHERE id='6'");
    	mysql_query ("UPDATE vote SET title='$v7' WHERE id='7'");
    	mysql_query ("UPDATE vote SET title='$v8' WHERE id='8'");
    	mysql_query ("UPDATE vote SET title='$v9' WHERE id='9'");
    	mysql_query ("UPDATE vote SET title='$v10' WHERE id='10'");
    	mysql_query ("UPDATE vote SET title='$v11' WHERE id='11'");
    	mysql_query ("UPDATE vote SET title='$v12' WHERE id='12'");
    	header('Location: /');
    	exit;
    }

    Сохранение вопросов в опроснике.

    slowpoke59rus, 27 Апреля 2016

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

    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
    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
    if (empty($_GET['mms']) and empty($_GET['mass']) and empty($_GET['showuser']) and empty($_GET['user']) and empty($_GET['rate'])) {
    $db = mysql_connect ( "mysql.hostinger.ru", "u391920429_gala", "kirill1998" );
    mysql_select_db ( "u391920429_gala", $db );
    $pas = $_POST['pas'];
    $pass1 = $_POST['pass1'];
    $pass2 = $_POST['pass2'];
    $lop = addcslashes($pass1, '?%');
    $jjj = mysql_real_escape_string ($lop);
    $pol = addcslashes($pass2, '?%');
    $kkk = mysql_real_escape_string ($pol);
    $i = $_GET['edit'];
    $mail = $_POST['mail'];
    $stat = $_POST['stat'];
    $ava = $_POST['ava'];
    $ie = addcslashes($i, '?%');
    $ieq = mysql_real_escape_string ($ie);
    $id = preg_replace('~[^a-z0-9 \x80-\xFF]~i', "",$ieq);
    $lol = addcslashes($mail, '?%');
    $ooo = mysql_real_escape_string ($lol);
    $per = addcslashes($stat, '?%');
    $adr = mysql_real_escape_string ($per);
    $po = addcslashes($ava, '?%');
    $popa = mysql_real_escape_string ($po);
    $re=mysql_query("SELECT * FROM users WHERE id='$id'", $db);
    $user = $_SESSION["id"];
    if (mb_strlen($_POST['mail']) >= 4) {
    $up=mysql_query("UPDATE users SET email='$ooo' WHERE id='$user'", $db);
    }
    if (mb_strlen($_POST['stat']) >= 5) {
    $up=mysql_query("UPDATE users SET stat='$adr' WHERE id='$user'", $db);
    }
    if (mb_strlen($_POST['ava']) >= 4) {
    $up=mysql_query("UPDATE users SET ava='$popa' WHERE id='$user'", $db);
    }
    $name = $_SESSION["name"];
    $result=mysql_query("SELECT * FROM users WHERE name='$name'", $db);
    $myrow=mysql_fetch_array($result);
    $passs = md5($pas);
    if ($passs == $myrow["pass"]) {
    if ($jjj == $kkk) {
    if (mb_strlen($jjj) >=5) {
    $mdpass = md5($jjj);
    $up=mysql_query("UPDATE users SET pass='$mdpass' WHERE id='$user'", $db);
    }
    }
    }
    $res=mysql_fetch_array($re);
    if ($_SESSION["id"] == $id) {
    	if ($res['ban'] == 1) {
    		echo '<div class="user_prof">
    		<div class="name_prof_block">Профиль</div>
    				<form name="set" action="/prof.php?edit='.($res['id']).'" method="post">
    				<div class="name_prof_b">Почта</div>
    					<input class="form_mail" value="'.$res['email'].'" name="mail" type="text"/>
    				<div class="name_prof_b">Аватар</div>
    					<input class="form_ava" value="'.$res['ava'].'" name="ava" type="text"/>
    				<div class="name_prof_b">Статус</div>
    					<div class="bb_code_div">'.BB_PANEL('set','stat').'</div>
    					<textarea class="form_status" name="stat" type="text">'.$res['stat'].'</textarea>
    					<input class="add_news" value="Сохранить" type="submit"/>
    				</form>
    		</div>';
    		echo '<div class="stat_prof">
    		<div class="name_prof_block">Пароль</div>
    				<form action="" method="post">
    					<input class="form_mail" placeholder="Старый пароль" name="pas" type="text"/>
    					<input class="form_mail" placeholder="Новый пароль" name="pass1" type="text"/>
    					<input class="form_ava" placeholder="Повторите новый пароль" name="pass2" type="text"/>
    					<input class="add_news" value="Сменить пароль" type="submit"/>
    				</form>
    		</div>';
    	}
    	if ($res['ban'] == 0) {
    	echo '<div class="user_prof">Ваш аккаунт заблокирован<a class="logout_prof" href="/?step=exit">Выход</a></div>';
    	}
    }
    else {
    		echo 'Доступ запрещен';
    }
    }

    slowpoke59rus, 27 Апреля 2016

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