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

    +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
    // ------------------- Max_id & Min_id functions ------------------|
    function get_id($user_query, $col="id", $type="max"){
    
    	global $getdata;
    
    	$query = mysql_query("select distinct `".$col."` from ".$getdata['pref'].$user_query);
    	for($i=1;$w = mysql_fetch_array($query);){
    		if($w[$col]>=$id){$id = $w[$col];}
    	}
    
    	if($type!="max"){
    		$query = mysql_query("select distinct `".$col."` from ".$getdata['pref'].$user_query);
    		while($w = mysql_fetch_array($query)){
    			if($w[$col]<=$id){$id = $w[$col];}
    		}
    	}
    
    	return $id;
    }
    // ------------------- Max_id & Min_id functions ------------------|

    good_web_master, 11 Сентября 2013

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

    +155

    1. 1
    data-selected-items='[<? $i=0; foreach($children_items as $child) {echo '{"id":"'.$child['id'].'", "text":"'.addslashes($child[$item_title_column]).'"}'; if( ++$i != count($children_items) ) echo ',';} ?>]'

    json_encode не слышали

    jfhs, 10 Сентября 2013

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

    +157

    1. 1
    2. 2
    3. 3
    public function set($index) {
    	$this->data[$name] = $val;
    }

    Встретился метод при рефакторинге :-)

    aleksssmix, 10 Сентября 2013

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

    +145

    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
    function curPageURL() {
    	$pageURL = 'http';
    	if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
    	$pageURL .= "://";
    
    	if ($_SERVER["SERVER_PORT"] != "80") {
    		$pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
    	} else {
    		$pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
    	}
    
    	$pos = strripos($pageURL, "/");
    	if ($pos !== false) {
    		$pageURL = substr($pageURL, 0, $pos+1);
    	}
    
    	return $pageURL;
    }

    Эпическая функция предназначение неизвестно.

    good_web_master, 07 Сентября 2013

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

    +149

    1. 1
    2. 2
    foreach (cms::hooks('template_output') as $hook_file)
       require($hook_file);

    хуки содержатся в отдельных файлах и вставляются в код напрямую.

    fidelcomandante, 04 Сентября 2013

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

    +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
    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
    log_info('= Выгрузка метаданных =');
    $cnt = $x->metaCurrencies('/gooddata/'.$folder.'/'.$subfolder.'/x/currencies');
    $cnt = $x->metaRegions('/gooddata/'.$folder.'/'.$subfolder.'/x/regions');
    $cnt = $x->metaCountries('/gooddata/'.$folder.'/'.$subfolder.'/x/countries');
    $cnt = $x->metaSources('/gooddata/'.$folder.'/'.$subfolder.'/x/sources');
    $cnt = $x->metaGroups('/gooddata/'.$folder.'/'.$subfolder.'/x/groups');
    $cnt = $x->metaProviders('/gooddata/'.$folder.'/'.$subfolder.'/x/providers');
    $cnt = $x->metaPS('/gooddata/'.$folder.'/'.$subfolder.'/x/paymentsystems');
    $cnt = $x->metaProjects('/gooddata/'.$folder.'/'.$subfolder.'/x/projects');
    $cnt = $x->metaPayments('/gooddata/'.$folder.'/'.$subfolder.'/x/payments');
    $cnt = $x->metaGeotypes('/gooddata/'.$folder.'/'.$subfolder.'/x/geotypes');
    $cnt = $x->metaPartners('/gooddata/'.$folder.'/'.$subfolder.'/x/partners');
    $cnt = $x->metaEmployees('/gooddata/'.$folder.'/'.$subfolder.'/x/employees');
    $cnt = $x->metaForecast('/gooddata/'.$folder.'/'.$subfolder.'/x/forecast');
    $cnt = $x->metaClusters('/gooddata/'.$folder.'/'.$subfolder.'/x/clusters');
    $cnt = $x->metaPSContr('/gooddata/'.$folder.'/'.$subfolder.'/x/pspartners');
    $cnt = $x->metaClustersMatrix('/gooddata/'.$folder.'/'.$subfolder.'/x/clustersmatrix');
    $cnt = $x->metaAccounts('/gooddata/'.$folder.'/'.$subfolder.'/x/accounts');
    $cnt = $x->metaBalanceType('/gooddata/'.$folder.'/'.$subfolder.'/x/balancetypes');
    $cnt = $x->metaBalanceGame('/gooddata/'.$folder.'/'.$subfolder.'/x/balancegame');
    $cnt = $x->metaBalancePS('/gooddata/'.$folder.'/'.$subfolder.'/x/balanceps');
    $cnt = $x->metaBalancePSContr('/gooddata/'.$folder.'/'.$subfolder.'/x/balancepscontr');
    $cnt = $x->metaBalanceBank('/gooddata/'.$folder.'/'.$subfolder.'/x/balancebank');
    $cnt = $x->metaBalanceLost('/gooddata/'.$folder.'/'.$subfolder.'/x/balancelost');
    $cnt = $x->metaStatuses('/gooddata/'.$folder.'/'.$subfolder.'/x/statuses');
    $cnt = $x->metaTypes('/gooddata/'.$folder.'/'.$subfolder.'/x/types');
    $cnt = $x->metaSupervisors('/gooddata/'.$folder.'/'.$subfolder.'/x/supervisors');
    $cnt = $x->metaGames('/gooddata/'.$folder.'/'.$subfolder.'/x/games');
    $cnt = $x->metaProjectStatus('/gooddata/'.$folder.'/'.$subfolder.'/x/projectstatuses');
    
    log_info('= Создание временных папок на Webdav =');
    $path = $folder;
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path,'MKCOL',array());
    $path.= '/'.$subfolder;
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path,'MKCOL',array());
    $path.= '/x';
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path,'MKCOL',array());
    
    log_info('= Создание папок сетов =');
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/currencies','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/regions','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/countries','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/sources','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/groups','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/providers','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/paymentsystems','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/projects','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/payments','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/geotypes','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/partners','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/employees','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/forecast','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/clusters','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/pspartners','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/clustersmatrix','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/accounts','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/balancetypes','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/balancegame','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/balanceps','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/balancepscontr','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/balancebank','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/balancelost','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/types','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/statuses','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/supervisors','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/games','MKCOL',array());
    $res = simple_request(GOODDATA_WEBDAV.'/'.$path.'/projectstatuses','MKCOL',array());
    
    log_info('= Выгрузка данных =');
    $cnt = $x->exportCurrencies('dataset.currencies','/gooddata/'.$folder.'/'.$subfolder.'/x/currencies');
    log_info(' - currencies');
    $cnt = $x->exportRegions('dataset.regions','/gooddata/'.$folder.'/'.$subfolder.'/x/regions');
    log_info(' - regions');
    $cnt = $x->exportCountries('dataset.countries','/gooddata/'.$folder.'/'.$subfolder.'/x/countries');
    log_info(' - countries');
    $cnt = $x->exportSources('dataset.sources','/gooddata/'.$folder.'/'.$subfolder.'/x/sources');
    log_info(' - sources');
    //и дальше в таком же духе 600 строк

    Цыклы, массивы? Не, не слышал

    dimkich, 04 Сентября 2013

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

    +148

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $try = $db->getRow(
    	"SELECT * FROM user_{$name}, item_{$name} ".
    	"WHERE user_{$name}.usr_id=? AND user_{$name}.{$type}_id=? AND user_{$name}.{$type}_id=item_{$name}.{$type}_id",
    	array($user->usr_id, $id)
    );

    последствия неправильно спроектированной БД

    xara, 03 Сентября 2013

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

    +169

    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
    <?php
    
    // ...
    function init_module_laboratory()
    {
        // ... 871 строка глазовыдирающего кода и далее:
    
        /**
         * Дорогой продолжатель развития этого дерьмого приложения,
         * я перед уходом подготовил для тебя много пряников, чтобы
         * тебе не было скучно. Желаю тебе удачного рабочего времени!
         */
        return !!1?!0:(!!1?(!1?!0:(!!!1?!!1:!1)):!1);
    }

    И такое встречаться может

    greevex, 02 Сентября 2013

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

    +157

    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
    public static function createShareUser($email) {
            $password = substr(md5(time()), 0, 8);
            $query =  "insert into users (username, email, realname, password) values ('".$email."','".$email."','".$email."','".md5($password)."')";
            $c = 0;
            while (!mysql_query($query) && $c < 100) {
    			LLogger::logError("[createUser] - MySql error (".$c."): [".implode(' *** ', DB::error_info()));
    			return false;
                $query = preg_replace('%_%' . ($c - 1), '_' . ($c), $query);
                $c++;
            }
        
            if ($c == 100) {
                LLogger::logError("[createUser] - More than 10 unnamed users exists.");
                return false;
            }
    
            $userId = LQuery::getLastInsertId();
            LUserRights::setUserRights($userId);
            return $userId;
        }

    //если у нас строка exists в БД, это что бы наверняка, а вдруг на 101 раз у нас ее не будет :)
    // ну или наконец, оно "волшебным" образом ее туда всетаки впихнет
    //мускул обидится на автора и сдастся, подумает, да ну тебя ты дебил хочешь так на!
    // автор просто Пикассо, что не фун-я то шедевр.

    vv3d0x, 02 Сентября 2013

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

    +151

    1. 1
    2. 2
    3. 3
    if (!$start) {
        $this->_select()->where('1 != ? ', 1);
    }

    Наткнулись на такую какулю, непонятно, зачем? Да и в принципе если вторую 1-цу экрунируем, почему первую нет??

    index0h, 02 Сентября 2013

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