1. Список говнокодов пользователя kissarat

    Всего: 16

  2. PHP / Говнокод #24020

    −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
    <?php
    
    namespace app\tests\fixtures;
    
    
    use yii\test\ActiveFixture;
    
    abstract class MorozovFixture extends ActiveFixture
    {
        public static function getDataMorozov(string $class) {
            $class = 'app\tests\fixtures\\' . $class . 'Fixture';
            /**
             * @var MorozovFixture $fixture
             */
            $fixture = new $class();
            return $fixture->getData();
        }
    }
    ...

    Костыль Public Morozov http://govnokod.ru/23992

    kissarat, 27 Марта 2018

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

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    class UserFixture extends ActiveFixture
    {
        public function getDataMorozov() {
            return $this->getData();
        }
    
        protected function getData() {
    ...

    Yii 2 fixtures. Называем костыли правильно

    kissarat, 25 Марта 2018

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

    +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
    <?php
    $page = $_GET['page'];
    $do = $_GET['do'];
    $todo = $_GET['todo'];
    
    //sponsor
    $s = $_GET['s'];
    
    //stupen
    $st = $_GET['st'];
    
    //sponsor
    $u = $_GET['u'];
    
    $email = $_POST['email'];
    $password = $_POST['password'];
    
    $name = $_POST['name'];
    $message = $_POST['message'];
    
    
    $surname = $_POST['surname'];
    $username = $_POST['username'];
    $passrepeat = $_POST['passrepeat'];
    $sponsor = $_POST['sponsor'];
    $skype = $_POST['skype'];
    $perfectmoney = $_POST['perfectmoney'];
    $payeer = $_POST['payeer'];
    $advcash = $_POST['advcash'];
    $bitcoin = $_POST['bitcoin'];
    
    $status = $_POST['status'];
    
    $uac = $_GET['uac'];
    
    $nowis = time();
    
    if ($do == 'login') {
        //id 	name 	email 	username 	password
        $querylogin = "SELECT * FROM `users`";
        $datalogin = mysql_query($querylogin);
        while ($rowlogin = mysql_fetch_array($datalogin)) {
            $usercheck_id = $rowlogin['id'];
            $usercheck_mail = $rowlogin['email'];
            $usercheck_pass = $rowlogin['password'];
            $usercheck_name = $rowlogin['name'];
            $usercheck_username = $rowlogin['username'];
    
            if ($usercheck_username == $username) {
                if ($usercheck_pass == $password) {
                    $_SESSION['user'] = $usercheck_id;
                    $inmsg = 'Привет ' . $usercheck_name . '!';
                    $page = 'cabinet';
                } else {
                    $err_msg = 'Неправильные пароль или аккаунт!';
                }
            } else {
                $err_msg = 'Неправильные пароль или аккаунт!';
            }
        }
    }

    Такого дилетанского кода я еще не видел

    kissarat, 12 Октября 2017

    Комментарии (189)
  5. JavaScript / Говнокод #22087

    −49

    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
    function checkAccess(options, a, b) {
      const access = this.modules.access
      for (let key in options) {
        const decorator = access[key]
        if (decorator) {
          try {
            const v = decorator.call(this, options[key], a, b)
            if (v) {
              return v
            }
          }
          catch (error) {
            error.decorator = key
            return {
              code: 500,
              error
            }
          }
        }
        else {
          return {
            code: 500,
            error: {
              decorator: key,
              message: 'No such decorator'
            }
          }
        }
      }
    }
    
    function callAction(self, module, actionName, a, b) {
      const action = module[actionName]
      if (action instanceof Function) {
        return checkAccess.call(self, module.$call, a, b)
          || checkAccess.call(self, module['$' + actionName], a, b)
          || action.call(self, a, b)
      }
      else {
        throw new Error('No such action: ' + actionName)
      }
    }

    Вместо декораторов...

    kissarat, 30 Января 2017

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

    −50

    1. 1
    2. 2
    3. 3
    4. 4
    function invokeParent(actionName) {
        const result = this.module.__proto__.__proto__[actionName].apply(this, slice(arguments, 1))
        return result.then instanceof Function ? result : Promise.resolve(result)
      }

    Когда нужно вызвать action родительского контроллера, а this указывает на req

    kissarat, 30 Января 2017

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

    −11

    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
    <?php 
    include('config.php');
    session_start();
    
    if($_GET["code"] != null)
    {
    	$user_code = $_GET["code"];
    	$api ='https://oauth.vk.com/access_token?client_id=666&client_secret=i_am_a_god&redirect_uri=http://govnosite.com/check_podp.php&code='.$user_code;
    	$resp = file_get_contents($api);
    	$data = json_decode($resp, true);
    	$vk_access_token = $data['access_token'];
    	$vk_uid =  $data["user_id"];
    	
    	$sql = mysql_query("SELECT `id`, `email`, `podp_id` FROM `regitr` WHERE `email`='".$_SESSION['email']."' "); 
    	$i=1;
    	while($row = mysql_fetch_assoc($sql)) 
    	{
    		$podp[$i] = $row["podp_id"];
    		$resy = file_get_contents("https://api.vk.com/method/friends.areFriends?user_ids=".$podp[$i]."&v=5.37&access_token=".$vk_access_token."");
    		$datar = json_decode($resy, true);
    		$user_info = $datar['response'][0];
    		$result = $user_info['friend_status'];
    		if($result == 0 || $result == 2)
    		{
    			header("Location: ne_popd1.php"); 
    			exit();
    		}
    		else
    		{
    			$i++;
    		}
    	}
    	header("Location: oplata.php");
    	exit();
    }
    ?>

    Проверяем подписчиков

    kissarat, 31 Октября 2015

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

    +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
    <?php 
    include('config.php');
    $pasword_switch = $_GET["pass"];
    $mail = $_GET["mail"];
    $nashelsypa = 0;
    $sql = mysql_query("SELECT `user_id`, `email` FROM `users` WHERE `user_id`='".$pasword_switch."' AND `email`='".$mail."' LIMIT 1");
    while(mysql_fetch_array($sql))
    {
    	$nashelsypa = 1;
    }
    if($nashelsypa == 1)
    {
    	if(isset($_POST['submit']))
    	{
    		if($_POST['password'] == $_POST['password_re'])
    		{
    			mysql_query("UPDATE users SET password='".$_POST['password']."' WHERE `user_id`='".$pasword_switch."' AND `email`='".$mail."' ");
    			echo '<br>';
    			echo "Пароль успешно изменен";
    			mail($mail, "VK-SPS", "Ваш пароль для входу був змінений\nДані для входу \nE-mail:'".$mail."'\n Пароль:'".$_POST['password']."'"); 
    			header("Refresh: 5; url=login.php"); exit();
    		}
    		else
    		{
    			echo "Пароли не совпадают";
    		}
    	}
    ?>

    Смена пароля

    kissarat, 29 Октября 2015

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

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    taras@host ~/host/sites/default $ drush phpsh-console
    php> var_dump(eval('array()'));
    bool(false)
    PHP Parse error:  syntax error, unexpected end of file in /usr/local/lib/python2.7/dist-packages/phpsh/phpsh.php(591) : eval()'d code(1) : eval()'d code on line 1

    О мой мозг...! А Python здесь причем?

    kissarat, 24 Февраля 2015

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

    +156

    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
    function form_xml_items( $sXML, $reserve, $exchange ){
    	foreach ($exchange as $in => $outs) {
    
    		$currency_in = taxonomy_term_load($in);
    		switch ($in) {
    			case 6:
    				$currency_in->name = 'CASHUAH';
    				break;
    			case 18:
    				$currency_in->name = 'CASHUSD';
    				break;
    
    // ...
    
    				$currency_in->name = 'TBRUB';
    				break;
    			case 161:
    				$currency_in->name = 'OPB';
    				break;
    		}
    
    		foreach ($outs as $out => $param) {
    
    			$currency_out = taxonomy_term_load($out);
    
    			switch ($out) {
    				case 11:
    					$currency_out->name ='CASHUAH';
    					break;
    				case 19:
    					$currency_out->name ='CASHUSD';
    					break;
    
    // ...
    
                                   case 155:
    					$currency_out->name = 'CARDRUB';
    					$currency_out->second_name = 'WIRERUB';
    					break;
    				case 162:
    					$currency_out->name = 'OPB';
    					break;
    			}
    
    			$sXML .= "<item>\n";
    			$sXML .= "<from>" . $currency_in->name . "</from>\n";
    			$sXML .= "<to>" . $currency_out->name  . "</to>\n";
    			$sXML .= "<in>1</in>\n";
    			$sXML .= "<out>" . $param["rate"] . "</out>\n";
    			$sXML .= "<amount>" . $param["reserve"] . "</amount>\n";
    			$sXML .= "</item>\n";
    			//wire and card in
    			if (isset( $currency_in->second_name)){
    				$sXML .= "<item>\n";
    				$sXML .= "<from>" . $currency_in->second_name . "</from>\n";
    				$sXML .= "<to>" . $currency_out->name  . "</to>\n";
    				$sXML .= "<in>1</in>\n";
    				$sXML .= "<out>" . $param["rate"] . "</out>\n";
    				$sXML .= "<amount>" . $param["reserve"] . "</amount>\n";
    				$sXML .= "</item>\n";
    			}
    			//wire and card out 
    			if (isset($currency_out->second_name)){
    				$sXML .= "<item>\n";
    				$sXML .= "<from>" . $currency_in->name . "</from>\n";
    				$sXML .= "<to>" . $currency_out->second_name  . "</to>\n";
    				$sXML .= "<in>1</in>\n";
    				$sXML .= "<out>" . $param["rate"] . "</out>\n";
    				$sXML .= "<amount>" . $param["reserve"] . "</amount>\n";
    				$sXML .= "</item>\n";
    			}
    		}
    
    	}
    	return $sXML;
    }

    Если не взирать на магические числа, кажеться этот код должен занимать строк 20, а не 130

    kissarat, 11 Февраля 2015

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

    +155

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (in_array ($v["field_currency_out"]["und"][0]["tid"], array(20, 21, 26, 27,153,157,154,152,155,162)) || in_array ($v["field_currency_in"]["und"][0]["tid"], array(22, 23, 24, 25,151,156,150,149,148,161))) {
        $v["field_payment"]["und"][0]["tid"] = 28;
    } else {
        $v["field_payment"]["und"][0]["tid"]= 13;
    }

    Представте что весь сайт написан в этом же духе.
    Причем мы имеем дело с двома наборами констант для обозначения валют - для входа и выхода перевода.

    kissarat, 10 Февраля 2015

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