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

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    function crc32_file($file) {
       $version = sprintf("%u",crc32(file_get_contents(Yii::app()->getBaseUrl(true).$file)));
       return Yii::app()>request>baseUrl.$file.'?version='.$version;
    }

    Искали почему сайт тормозит

    slava1, 12 Мая 2014

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

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $useragent=$_SERVER['HTTP_USER_AGENT'];
     
    if(preg_match('/android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)/|plucker|pocket|psp|symbian|treo|up.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i',$useragent)||preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|/(k|l|u)|50|54|e-|e/|-[a-w])|libw|lynx|m1-w|m3ga|m50/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|xda(-|2|g)|yas-|your|zeto|zte-/i',substr($useragent,0,4))) {
            header("Location: http://mywebsite.com/mobile"); }
    else{
            header("Location: http://mywebsite.com/des");
    }

    Враг не пройдет

    kostoprav, 12 Мая 2014

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

    +156

    1. 1
    http://json-gk.url.ph/jsongk.zip

    Отдает страницы говнокодика в json. Параметры те же, что и у говнокодика
    http://json-gk.url.ph/cpp старшая страница c++
    http://json-gk.url.ph/?page=1138 1138 страница для гостя.

    Vasiliy, 11 Мая 2014

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

    +152

    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
    protected function CreateClass($className, $params) {
    	switch (count($params)) {
    		case 0:
    			return new $className();
    			break;
    		case 1:
    			return new $className($params[0]);
    			break;
    		case 2:
    			return new $className($params[0], $params[1]);
    			break;
    		case 3:
    			return new $className($params[0], $params[1], $params[2]);
    			break;
    		case 4:
    			return new $className($params[0], $params[1], $params[2], $params[3]);
    			break;
    		case 5:
    			return new $className($params[0], $params[1], $params[2], $params[3], $params[4]);
    			break;
    		case 6:
    			return new $className($params[0], $params[1], $params[2], $params[3], $params[4], $params[5]);
    			break;
    		case 7:
    			return new $className($params[0], $params[1], $params[2], $params[3], $params[4], $params[5], $params[6]);
    			break;
    		case 8:
    			return new $className($params[0], $params[1], $params[2], $params[3], $params[4], $params[5], $params[6], $params[7]);
    			break;
    		case 9:
    			return new $className($params[0], $params[1], $params[2], $params[3], $params[4], $params[5], $params[6], $params[7], $params[8]);
    			break;
    		case 10:
    			return new $className($params[0], $params[1], $params[2], $params[3], $params[4], $params[5], $params[6], $params[7], $params[8], $params[9]);
    			break;
    		default:
    			echo "Too many arguments";
    			return null;
    			break;
    	}
    }

    Плагин Jevents для джумлы

    Itareo, 11 Мая 2014

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

    +154

    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
    <?php function view_admin_article_categories_show_category(Model_Article_Category $category, $marker) { ?>
        <tr>
            <td><?=$category->id?></td>
            <td><a href="<?=Route::url('admin_articles_category_edit', array('id' => $category->id))?>"><?=$marker?><?=$category->title?></a></td>
            <td><?=$category->alias?></td>
            <td><?=$category->seo_title?></td>
            <td>
                <a href="<?=Route::url('admin_articles_category_edit', array('id' => $category->id))?>"><span class="icon-edit"></span></a>
                &nbsp;
                <a href="<?=Route::url('admin_article_remove', array('id' => $category->id))?>"><span class="icon-remove"></span></a>
            </td>
        </tr>
    <?php } ?>
    <?php
        function view_admin_article_categories_show_child_categories(array $categories, array $current = null, $marker = '')
        {
            if($current === null)
            {
                $parents = queryToArray::from($categories)
                        ->where(function($value){
                            return !is_numeric($value->parent_id);
                        })
                        ->result();
                view_admin_article_categories_show_child_categories($categories, $parents, '');        
            } else {
                foreach($current as $parent)
                {
                    view_admin_article_categories_show_category($parent, $marker);
                    $childs = queryToArray::from($categories)
                        ->where(function($value)use($parent){
                            return $value->parent_id === $parent->id;
                        })
                        ->result();
                    if($childs) {
                        view_admin_article_categories_show_child_categories($categories, $childs, $marker.'&minus; ');
                    }
                }
            }
        }?>

    Проект на Kohana. Где-то во вьюхе.

    Strannik1941, 11 Мая 2014

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

    +152

    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
    function code_generator(){
            $chars="ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890";
    	$code_name='';
    	for ($i=0;$i<5;$i++){
    
    		$code_name.=substr($chars, rand(1, strlen($chars))-1,1);
    
    	}
    	return $code_name;
    }
    
    function generate (){
    	$code_name=code_generator().'-'.code_generator().'-'.code_generator().'-'.code_generator().'-'.code_generator();
            return $code_name;
    }

    Шедевральное решение задачи по генерированию ключа:)

    PHPed, 09 Мая 2014

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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $server = json_decode("{".base64_decode(base64_decode($value))."}");
    
    $name = urldecode($name);
    $path = $uploadFolder . DIRECTORY_SEPARATOR . base64_encode(base64_encode($name));
    
    $cont[$i]->reference = base64_encode(htmlspecialchars(stripslashes(base64_decode($cont[$i]->ref)), ENT_QUOTES));
    
    $value = addslashes(stripslashes(htmlspecialchars(preg_replace("/\'/ui", "", $e["value"]))));

    Код одного из проектов крупной хостинговой компании.

    mckolan, 08 Мая 2014

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

    +167

    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
    function validateBoolean($bool) {
    		if ($bool == 'true') {
    			return '1';
    		} else if ($bool == 'false') {
    			return '0';
    		}
    		
    		if ($bool == '1') {
    			return "true";
    		} else if ($bool == '0'){
    			return "false";
    		}
    		
    		exit("Invalid Boolean Data");
    	}

    вот такое чудо нам передали на поддержку

    NasGull, 07 Мая 2014

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

    +160

    1. 1
    2. 2
    3. 3
    class WPEditableComments{
    
    	function WPEditableComments(){$this->__construct();}

    Нашел в одном из плагинов wp. Чел думает об обратной совместимости ога

    Diwms, 07 Мая 2014

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

    +147

    1. 1
    2. 2
    // Мне опять кажется, или скобки у !empty лишние?
    $id = (!empty($id)) ? $id : (int)$this->getState('message.id');

    http://ru2.php.net/manual/ru/language.operators.precedence.php

    psycho-coder, 07 Мая 2014

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