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

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

    +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
    Generator.prototype.update = function () {
    	var	t = this.timer++,
    		d = this.delay,
    		s = this.samples,
    		m = this.minDistance,
    		w = this.width,
    		h = this.height,
    		g = this.global,
    		c = this.cid,
    		ttl = this.ttl--,
    		l = s.length,
    		rand = Math.random,
    		floor = Math.floor,
    		x,
    		y,
    		r,
    		i,
    		j,
    		d2,
    		n;
    
    	if (ttl > 0) {
    		while (t > d) {
    			r = s[floor(rand() * l)].copy();
    
    			if (m) {
    				i = 1000;
    				while (i--) {
    					x = rand() * w - w * 0.5;
    					y = rand() * h - h * 0.5;
    
    					for (j in this) if (j instanceof Entity) {
    						n = this[i];
    						d2 = (x - n.x) * (x - n.x) + (y - n.y) * (y - n.y);
    
    						if (d2 * d2 > m) {
    							i = 0;
    						}
    					}
    				}
    			} else {
    				x = rand() * w - w * 0.5;
    				y = rand() * h - h * 0.5;
    			}
    
    			r.x = x;
    			r.y = y;
    
    			if (!g) {
    				r.parent = this;
    			}
    
    			this[c] = r;
    			this.cid = c += 1;
    			this.time = t -= d;
    		}
    	} else {
    		delete this.update;
    	}
    };

    асм-диалект яваскрипта

    prezident, 04 Сентября 2014

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

    +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
    foreach($PROP as $k1 => $val1)
    		{
    			if(is_array($val1))
    			{
    				foreach($val1 as $k2 => $val2)
    				{
    					$text_name = preg_replace("/([^a-z0-9])/is", "_", "PROP[".$k1."][".$k2."][VALUE][TEXT]");
    					if(array_key_exists($text_name, $_POST))
    					{
    						$type_name = preg_replace("/([^a-z0-9])/is", "_", "PROP[".$k1."][".$k2."][VALUE][TYPE]");
    						$PROP[$k1][$k2]["VALUE"] = array(
    							"TEXT" => $_POST[$text_name],
    							"TYPE" => $_POST[$type_name],
    						);
    					}
    				}
    			}
    		}
    
    		foreach($PROP as $k1 => $val1)
    		{
    			if(is_array($val1))
    			{
    				foreach($val1 as $k2 => $val2)
    				{
    					if(!is_array($val2))
    						$PROP[$k1][$k2] = array("VALUE" => $val2);
    				}
    			}
    		}

    bitrix

    как вам организация цикла(ов)

    memclutter, 01 Сентября 2014

    Комментарии (1)
  4. JavaScript / Говнокод #16539

    +156

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    var day = new Date(values.date_b.substring(0, 10));
                var days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
                var curDay = day.getDay();
                for(var i = 0; i < days.length; i++) {
                    if (days[i] == days[ day.getDay() ]) {
                        curDay = i;
                        break;
                    }
                }
                curDay = (curDay == 0) ? 7 : curDay;

    dr_Lev, 15 Августа 2014

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

    +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
    function tuc1($mensaje)
    		{
    			if (ereg("^[a-zA-Z0-9\-_ ]{1,255}$", $mensaje))
    			{
    				return $mensaje;
    			}else{
    				echo "Сука тебе пиздец мразь,айпи записан менты уже едут.А пока пшел нахуй отсюда.";
    				include('footer.php');
    				exit();
    			}
    		}
    		
    $stana=trim(htmlentities(stripslashes(tuc1($_GET["p"]))));

    //после взлома проснулась у друга параноя

    Reds, 12 Августа 2014

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

    +156

    1. 1
    2. 2
    $user_id = $engine->auth->id;
    $sql = "SELECT `id` FROM `arm_tasks` WHERE (followers_id = '{$user_id}' OR followers_id LIKE '{$user_id},%' OR followers_id LIKE '%,{$user_id},%' OR followers_id LIKE '%,{$user_id}') ";

    Вот так отжигает товарищ по отделу.
    Поле followers_id в виде строки с id-шниками через запятую (что тоже не очень хорошо)

    podvzbzdnul, 11 Августа 2014

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

    +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
    $query_result = mysql_query("SELECT parking FROM `cat_info` WHERE is_sold = 0");
       
            $numpark = array();
            $numpark[2]=0;
            $numpark[3]=0;
            $numpark[5]=0;
            $numpark[6]=0;
        if($query_result)
      {
         
          while ($row = mysql_fetch_array($query_result)) 
        {
            switch ($row["parking"]){
           
            case 2:
            $numpark[2]++;
            break;
            case 3:
            $numpark[3]++;
            break;
            case 5:
            $numpark[5]++;
            break;
            case 6:
            $numpark[6]++;
            break;
            }
        }
      }

    Этот код считает количество записей в таблице, в зависимости от числа в колонке parking.

    bashtannik, 05 Августа 2014

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

    +156

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if(!$_SESSION['id'])
            {?>
            <ul class="login"><?php
                }
                elseif($_SESSION['id'])
                {?>
                <ul class="login"><?php
                    }?>
    // всякий код подобный тому что выше
    </ul>

    История одного проекта

    reilag, 29 Июля 2014

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

    +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
    while(true)
    {
        $i++; if ($i == 10) { $res = array(); break;}
        $site = dq("
        SELECT a.username, a.id, a.url, a.title 
        FROM ylike a 
        LEFT JOIN amp_a_users b ON b.username = a.username 
        LEFT JOIN view_log c ON c.username = '".$user_n."' AND c.video_id = a.id 
        WHERE a.active = '1' AND b.video_credits >0 AND (c.video_id IS NULL AND a.username !='".$user_n."') 
        ORDER BY RAND() 
        LIMIT 1");
    
        $res = mysqli_fetch_array($site);
    	if ($chkd[$res[url]] == 1)
        {continue;}
    	else{
    	  $chkd[$res[url]] = 1;
    	}
    	if (get_likes($res[url])>=0){break;}
    	$res = array();
    }

    Суть функционала в том что пользователи добавляют видео с youtube и покупают так называемые кредиты. И когда кто-то смотрит твое видео он получает 1 кредит, при этом у тебя снимается. Блок кода направлен на то чтобы найти видео, которое ты еще не смотрел, активное и не личное.
    $user_n = логин текущего пользователя. Кода наглядно показывает как правильно, оптимизировано это все реализовать.
    Мало того того что запросы в цикле, так еще и и join происходит по varchar. Кстати чувак вобще вместо id юзеров использует логины пользователей для зависимостей пользователя и его различных данных.
    get_likes() по логике не понятно для чего, потому что функция запрашивает с youtube количество лайков, и по сути оно может быть либо 0 либо больше.

    reddevil, 22 Июля 2014

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

    +156

    1. 1
    2. 2
    $k[($obf[((3630-(708))-2915)])] = array ( "\u0430" => "а", "\u0410" => "А", "\u0431" => "б", "\u0411" => "Б", "\u0432" => "в", "\u0412" => "В", "\u0433" => "г", "\u0413" => "Г", "\u0434" => "д", "\u0414" => "Д", "\u0435" => "е", "\u0415" => "Е", "\u0451" => "ё", "\u0401" => "Ё", "\u0436" => "ж", "\u0416" => "Ж", "\u0437" => "з", "\u0417" => "З", "\u0438" => "и", "\u0418" => "И", "\u0439" => "й", "\u0419" => "Й", "\u043a" => "к", "\u041a" => "К", "\u043b" => "л", "\u041b" => "Л", "\u043c" => "м", "\u041c" => "М", "\u043d" => "н", "\u041d" => "Н", "\u043e" => "о", "\u041e" => "О", "\u043f" => "п", "\u041f" => "П", "\u0440" => "р", "\u0420" => "Р", "\u0441" => "с", "\u0421" => "С", "\u0442" => "т", "\u0422" => "Т", "\u0443" => "у", "\u0423" => "У", "\u0444" => "ф", "\u0424" => "Ф", "\u0445" => "х", "\u0425" => "Х", "\u0446" => "ц", "\u0426" => "Ц", "\u0447" => "ч", "\u0427" => "Ч", "\u0448" => "ш", "\u0428" => "Ш", "\u0449" => "щ", "\u0429" => "Щ", "\u044a" => "ъ", "\u042a" => "Ъ", "\u044b" => "ы", "\u042b" => "Ы", "\u044c" => "ь", "\u042c" => "Ь", "\u044d" => "э", "\u042d" => "Э", "\u044e" => "ю", "\u042e" => "Ю", "\u044f" => "я", "\u042f" => "Я", "r" => "", "n" => "
    ", "t" => "" );

    без комментариев...

    Genome, 21 Июля 2014

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

    +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
    while ($this->tariffs_model->getCarsCheckedByTariff($user_id, $tariff_info[0]['id']) > $tariff_info[0]['cars_count'])
    {
    	$cars = $this->tariffs_model->getCarsChecked($tariff_info[0]['id'], $user_id);
    	if ($cars)
    	{
    		//удаляем одну объяву
    		$this->tariffs_model->delCarChecked($cars[0]);
    		$this->sms_model->removeSmsByCarId($cars[0]);
    	}
    }
    
    /*-=-=-=-=-=-=-=-=-=-=-=-=- реализация ф-ций -=-=-=-=-=-=-=-=-=-=-=-=-*/
    
    /**
     * Получаем кол-во реально отмеченых объявлений
     * @param int $user_id
     * @param int $tariff_id
     */
    function getCarsCheckedByTariff($user_id, $tariff_id)
    {
    	$query = "SELECT COUNT(*) as count FROM tariffs_cars_checked WHERE car_id IN
    		(SELECT id FROM a2_cars WHERE user = ? AND expire_date >= ?) AND tariff_id = ?";
    	$result = $this->db->query($query, array($user_id, MYSQL_CURDATE, $tariff_id));
    
    	//echo $this->db->last_query();
    
    	if ($result && $result->num_rows() == 1)
    	{
    		return $result->row()->count;
    	}
    	else
    	{
    		return null;
    	}
    }
    
    /**
     * Список ID отмеченных объявлений по тарифу пользователя
     *
     * @param Int $tariff_id
     * @return Array[]
     * @author КОЕ-КТО 21.12.2009 12:35
     * @uses Controller::Profile
     */
    function getCarsChecked($tariff_id, $user_id)
    {
    	$this->db->select('tariffs_cars_checked.car_id')->from('tariffs_cars_checked')
    	->join('a2_cars', 'a2_cars.id = tariffs_cars_checked.car_id', 'inner')
    	->where(array('tariffs_cars_checked.tariff_id' => intval($tariff_id), 'a2_cars.user' => intval($user_id)));
    
    	$result = $this->db->get();
    	if ($result && $result->num_rows() > 0)
    	{
    		$cars = array();
    		foreach ($result->result_array() as $row)
    		{
    			$cars[] = $row['car_id'];
    		}
    		return $cars;
    	}
    	else
    	{
    		return null;
    	}
    }

    Удаляем объявления скопом!

    smail01, 10 Июля 2014

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