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

    −1

    1. 1
    2. 2
    https://thestreetjournal.org/2021/04/chinese-authorities-seize-7221-human-penises-on-cargo-ship-from-nigeria/
    7221 камерунских шоколадных зайцев пострадало.

    PenisDealer, 14 Апреля 2021

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

    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
    public function addMoney($name, $amount, $type)
    	{
    		$checkExist = $this->checkUserMoney($name);
    		$checkExist = ($checkExist != '<b>(Ico)</b> <h11 style=\"color: red\">Произошла ошибка!</h11> <br/>') ? true : false;
    		$name_uuid = $this->genUUID($name);
    		
    		if ($this->version == '1.12.2' AND $this->plugin != 'iconomy')
    		{
    			if ($checkExist)
    			{
    				if ($type == 'add')
    				{
    					$queryText = ($this->plugin == 'economylite') ? "UPDATE `economyliteplayers` SET `balance` = `balance` + '$amount' WHERE `uuid` = '$name_uuid' AND `currency` = 'economylite:coin'"
    																  : "UPDATE `{$this->table}` SET `money` = `money` + '$amount' WHERE `player_name` = '$name'";
    				} else
    				{
    					$queryText = ($this->plugin == 'economylite') ? "UPDATE `economyliteplayers` SET `balance` = '$amount' WHERE `uuid` = '$name_uuid' AND `currency` = 'economylite:coin'"
    														          : "UPDATE `{$this->table}` SET `money` = '$amount' WHERE `player_name` = '$name'";
    				}
    			} else
    			{
    					$queryText = ($this->plugin == 'economylite') ? "INSERT INTO `economyliteplayers` (`uuid`, `balance`, `currency`) VALUES ('$name_uuid', '$amount', 'economylite:coin')"									  
    																  : "INSERT INTO `{$this->table}` (`player_uuid`, `player_name`, `money`, `sync_complete`, `last_seen`) VALUES ('$name_uuid', '$name', '$amount', 'true', '0')";
    			}
    		} else 
    		{
    			if ($checkExist)
    			{
    				$queryText = ($type == 'add') ? "UPDATE `{$this->table}` SET `balance` = `balance` + $amount WHERE `username` = '$name'"
    											  : "UPDATE `{$this->table}` SET `balance` = $amount WHERE `username` = '$name'";
    			} else
    			{
    				$queryText = "INSERT INTO `{$this->table}` (`username`, `balance`) VALUES ('$name', $amount)";
    			}
    		}
    		echo $queryText;
    		$data = siteQuery($queryText, 'query', $this->mysqli);
    		$text = ($data != NULL) ? "<b>(Ico)</b> <h11 style=\"color: green\">Игроку $name успешно начисленно: $amount эмеральдов!</h11> <br/>" 
    								: '<b>(Ico)</b> <h11 style="color: red">Произошла ошибка!</h11> <br/>';
    		
    		return $text;
    		
    	}
    public function checkUserMoney($name)
    	{
    		$name_uuid = $this->genUUID($name);
    		
    		if ($this->version == '1.12.2' AND $this->plugin != 'iconomy')
    		{
    			$queryText = ($this->plugin == 'economylite') ? "SELECT `balance` FROM `economyliteplayers` WHERE `uuid` = '{$name_uuid}' AND `currency` = 'economylite:coin'"
    														  : "SELECT `money` as 'balance' FROM `{$this->table}` WHERE `player_name` = '{$name}'";
    		} else 
    		{
    			$queryText = "SELECT `balance` FROM `{$this->table}` WHERE `username` = '{$name}'";
    		}
    		
    		$data = siteQuery($queryText, 'assoc', $this->mysqli);
    		$text = ($data != NULL) ? "<b>(Ico)</b> <h11 style=\"color: green\">Балланс игрока $name: {$data['balance']} эмеральдов!</h11> <br/>" 
    								: '<b>(Ico)</b> <h11 style=\"color: red\">Произошла ошибка!</h11> <br/>';
    		
    		return $text;
    	}

    Этот говнокод кодил наш сотрудник https://vk.com/valiev_off, здесь вы можете наблюдать мастерские SQL запросы под тернарным соусом

    Dev1lroot, 06 Апреля 2021

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

    +1

    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($user->get('id')) { 
        $_SESSION['city-select'] = '';
        // если пользователь авторизован - определяем город
        $profile = $user->getOne('Profile');
        if ($profile) {
            $city = $profile->get('city');
        }
        
        // проходим все города и ищем подходящий
        $cities = $modx->runSnippet('pdoResources', array(
            'parents' => 205,
            'limit'   => 0,
            'includeTVs' => 'setCityForHome',
            'where'   => '{ "template" : "25" }',
            'tpl'     => '@CODE:{"id":"[[+id]]","city":"[[+tv.setCityForHome]]"}',
            'outputSeparator' => ','
        ));
        $redirectTo = 0;
        if($cities) { 
            $cities = $modx->fromJson('['.$cities.']');
            foreach( $cities as $c ) {
                if($c['city'] == $city) {
                    $redirectTo = $c['id'];
                    break;
                }
            }    
        }
    } else {
        // если не авторизован - проверяем сессию
        
        $session = $_SESSION['city-select'];
        
        // если сессия пустая - проверяем, на какой странице находимся
        // если страница города и пустая сессия - записываем в сессию
        if($modx->resource->get('template') == 25) {
            $_SESSION['city-select'] = $modx->resource->get('pagetitle');
            $city = $modx->resource->get('pagetitle');
        } else {
            $city = (!empty($_SESSION['city-select']))? $_SESSION['city-select'] : $city;
        }
    }

    Сумрачный гений, сука. Строки 11-28 особенно примечательны.

    CatScratchFever, 31 Марта 2021

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

    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
    function isRegEx($test)
    {
        $notThisLine = error_get_last();
        $notThisLine = isset($notThisLine['line']) ? $notThisLine['line'] + 0 : 0;
        while (($lines = rand(1, 100)) == $notThisLine);
        eval(
            str_repeat("\n", $lines) . 
            '@preg_match(\'' . addslashes($test) . '\', \'\');'
        );
        $check = error_get_last();
        $check = isset($check['line']) ? $check['line'] + 0 : 0;
        return $check == $notThisLine;
    }

    "Test if a regular expression is a valid one in PHP"
    https://stackoverflow.com/a/15143479/6702274

    kezzyhko, 28 Марта 2021

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

    +1

    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
    $query = "
    	SELECT
    		`version`, `mods`, `plugins`, `keywords`
    	WHERE
    		`version` = {$version}";
    foreach (explode(",", $mods) as $mod)
    {
    	$query += "AND `mods` LIKE '{$mod}' OR `mods` LIKE '{$mod},%' OR `mods` LIKE '%,{$mod},%' OR `mods` LIKE '%,{$mod}'";
    }
    foreach (explode(",", $plugins) as $plugin)
    {
    	$query += "AND `plugins` LIKE '{$plugin}' OR `plugins` LIKE '{$plugin},%' OR `plugins` LIKE '%,{$plugin},%' OR `plugins` LIKE '%,{$plugin}'";
    }

    Говнокод чтобы прогнать массив с id записей внутри varchar по массиву с id записей из переменной (id,id,id)

    Dev1lroot, 27 Марта 2021

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

    −1

    1. 1
    https://www.kp.ru/online/news/4203427/

    Ко-ко-кой багор)

    BJlaIIIHbIu_nemyx, 02 Марта 2021

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

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    <?php
    require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php"); 
    
    if($_POST['SESS_PARAM'] && $_POST['SESS_PARAM'] !='' && $_POST['SESS_PARAM_VALUE'] && $_POST['SESS_PARAM_VALUE'] !=''){
    
    	$_SESSION[$_POST['SESS_PARAM']] = $_POST['SESS_PARAM_VALUE'];
    	echo 'ok';
    }else{
    	echo 'error';
    }

    утверждают что сайт им писали лучшие из лучших

    BroadcastAddress, 23 Февраля 2021

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

    +1

    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
    $txtdd = $DI_Date;
    $DI_Date = explode(".",$DI_Date);
    
    $DI_YY = $DI_Date[2];
    $DI_LYY = $DI_YY;
    $DI_NYY = $DI_YY;
    $MY = $DI_Date[1].".".$DI_Date[2];
    
    $DI_MM = $DI_Date[1]-1;
    $DI_LMM = $DI_MM-1;
    if ($DI_LMM<0) $DI_LMM = 11;
    $DI_NMM = $DI_MM+1;
    if ($DI_NMM>11) $DI_NMM = 0;
    
    if ($DI_MM==0) $DI_LYY = $DI_YY-1;
    if ($DI_MM==11) $DI_NYY = $DI_YY+1;
    
    $DI_DD = 1;
    
    $lastM = $DI_MM;
    $yy = $DI_YY;
    if ($lastM<1) {
    	$lastM = 12+$lastM;
    	$yy = $yy - 1;
    }
    $lastM = $DI_DD.".".$lastM.".".$yy;
    
    $nextM = $DI_MM+2;
    $yy = $DI_YY;
    if ($nextM>12) {
    	$nextM = $nextM-12;
    	$yy = $yy + 1;
    }
    $nextM = $DI_DD.".".$nextM.".".$yy;
    
    $lastY = $DI_DD.".".($DI_MM+1).".".($DI_YY-1);
    $nextY = $DI_DD.".".($DI_MM+1).".".($DI_YY+1);

    kib0rg, 05 Февраля 2021

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

    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
    <?php
     /* Здесь проверяется существование переменных */
      if (isset($_POST['square'])) {$square = $_POST['square'];}
     if (isset($_POST['price'])) {$price = $_POST['price'];}
      if (isset($_POST['tel'])) {$tel = $_POST['tel'];}
    
    /* Сюда впишите свою эл. почту */
     $address = "[email protected]";
    
    /* А здесь прописывается текст сообщения, \n - перенос строки */
     $mes = "Тема: Заказ обратного звонка!\nЧто-то: $square\nЦена: $price\nТелефон: $tel";
    
    /* А эта функция как раз занимается отправкой письма на указанный вами email */
    $sub='Zapis na OKNA'; //сабж
    $email='Заказ <site.ru>'; // от кого
    $send = mail ($address,$sub,$mes,"Content-type:text/plain; charset = utf-8\r\nFrom:$email");
    
    ini_set('short_open_tag', 'On');
    header('Refresh: 3; URL=index.html');
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta http-equiv="refresh" content="3; url=index.html">
    <title>С вами свяжутся</title>
    <meta name="generator">
    <style type="text/css">
    body
    {
       
       background: #22BFF7 url(images/zakaz.jpg) top -70% center no-repeat;
       
    }
    
    <script type="text/javascript">
    setTimeout('location.replace("/index.html")', 3000);
    /*Изменить текущий адрес страницы через 3 секунды (3000 миллисекунд)*/
    </script> 
    </head>
    </body>
    </html>

    No comments.... just send mail...

    MouseZver, 02 Февраля 2021

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

    −1

    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
    <?php
    header ('Access-Control-Allow-Origin: *');//Разрешили кроссдоменные запросы
     
    $mysql_host = "хост";
    $mysql_database = "Бд";
    $mysql_user = "Юзернейм";
    $mysql_password = "пОроль";
     
    $link = mysql_connect($mysql_host, $mysql_user, $mysql_password) or die("Ошибка при подключении MySQL" );
    mysql_select_db($mysql_database, $link) or die ('Ошибка при подключении к БД');
     
        if (isset($_POST['login'])) { $login = $_POST['login']; if ($login == '') { unset($login);} }
        if (isset($_POST['password'])) { $password=$_POST['password']; if ($password =='') { unset($password);} }
        if (isset($_POST['email'])) { $email=$_POST['email']; if ($email =='') { unset($email);} }
        if (isset($_POST['silvercoin'])) { $silvercoin=$_POST['silvercoin']; if ($silvercoin =='') { unset($silvercoin);} }
        if (isset($_POST['goldcoin'])) { $goldcoin=$_POST['goldcoin']; if ($goldcoin =='') { unset($goldcoin);} }
    if (empty($login) or empty($password) or empty($email))
        {
        echo ("Вы ввели не всю информацию, заполните все поля!");
        exit();
        }
        $login = stripslashes($login);
        $login = htmlspecialchars($login);
        $password = stripslashes($password);
        $password = htmlspecialchars($password);
        $email = stripslashes($email);
        $email = htmlspecialchars($email);
        $silvercoin = stripslashes($silvercoin);
        $silvercoin = htmlspecialchars($silvercoin);
        $goldcoin = stripslashes($goldcoin);
        $goldcoin = htmlspecialchars($goldcoin);
        $login = trim($login);
        $password = trim($password);
        $email = trim($email);
        $silvercoin = trim($silvercoin);
        $goldcoin = trim($goldcoin);
        $q1 = mysql_query("SELECT login FROM `accounts` WHERE `login`='".$login."'");
        $loginb = mysql_fetch_array($q1);
        $loginbd=$loginb['login'];
        if($loginbd == $login){
        echo("Извините, введённый вами логин уже зарегистрирован.");
        exit();
        }
         else
        $result2 = mysql_query ("INSERT INTO accounts (login,password,email) VALUES('$login','$password','$email')");
        if ($result2=='TRUE')
        {
        echo "Вы успешно зарегистрированы!";
        }
    else {
        echo "Ошибка! Вы не зарегистрированы.";
        }
    ?>

    Использование бредо-заголовок в 2 строке
    Использование Инструмента в 2к21, который в PHP5.5.0 20 июня 2013 Объявлен как устаревший, а в PHP 7.0.0 удален
    Нет задающей кодировки подключения к БД
    Глупая, дешевая валидация данных начиная с 12 и заканчивая 46 строкой
    SQL-injection привет!
    46 строка - невероятно проверять boolean тип
    37 - 39 строка - юзер не найден - лови ошибку!

    Чуть не забыл... скрипт не в кодировке UTF-8 no BOM

    https://php.ru/forum/threads/pomogite-ispravit-oshibku-cannot-modify-header-information-headers-already-sent-by.90359/

    Привет 2010 году !

    MouseZver, 25 Января 2021

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