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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    <?php
    $fp = fopen('log.php', 'a');
    fwrite($fp, $_GET['Message']." \n");
    fclose($fp);
    ?>
    
    file log.php
    <?PHP header("Content-Type: text/html; charset=CP1251");?>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />

    Пишем логи на сервере.

    any0ne2567, 17 Апреля 2014

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

    +131

    1. 1
    Сосево из ширинки, ебля с порога.

    KonardStuard, 16 Апреля 2014

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

    +155

    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
    switch ( count($args) )
    		{
    			case 0:
    				return $obj->$method( );
    			case 1:
    				return $obj->$method( $args[0] );
    			case 2:
    				return $obj->$method( $args[0], $args[1] );
    			case 3:
    				return $obj->$method( $args[0], $args[1], $args[2] );
    			case 4:
    				return $obj->$method( $args[0], $args[1], $args[2], $args[3] );
    			case 5:
    				return $obj->$method( $args[0], $args[1], $args[2], $args[3], $args[4] );
    			case 6:
    				return $obj->$method( $args[0], $args[1], $args[2], $args[3], $args[4], $args[5] );
    			case 7:
    				return $obj->$method( $args[0], $args[1], $args[2], $args[3], $args[4], $args[5], $args[6] );
    			case 8:
    				return $obj->$method( $args[0], $args[1], $args[2], $args[3], $args[4], $args[5], $args[6], $args[7] );			
    			case 9:
    				return $obj->$method( $args[0], $args[1], $args[2], $args[3], $args[4], $args[5], $args[6], $args[7], $args[8] );			
    			case 10:
    				return $obj->$method( $args[0], $args[1], $args[2], $args[3], $args[4], $args[5], $args[6], $args[7], $args[8], $args[9] );			
    			case 11:
    				return $obj->$method( $args[0], $args[1], $args[2], $args[3], $args[4], $args[5], $args[6], $args[7], $args[8], $args[9], $args[10] );			
    			case 12:
    				return $obj->$method( $args[0], $args[1], $args[2], $args[3], $args[4], $args[5], $args[6], $args[7], $args[8], $args[9], $args[10], $args[11]   );			
    		}
    		throw new MWException( __CLASS__.": too many arguments to method called in ".__METHOD__ );

    thekiba, 16 Апреля 2014

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

    +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
    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
    79. 79
    80. 80
    81. 81
    $db = Db::getInstance();
    $result = $db->ExecuteS('SELECT * FROM `'._DB_PREFIX_.'payment_module_settings`;');
    $text = "";
    for($i=2;$i<sizeof($result[0]);$i++)
    {
        if($i == 2)
        {
            $text .= "[general]"."\n";
            $text .= "url = '".$result[0][url]."'"."\n";
        }
        if($i == 3)
        {
            $text .= "[payment]"."\n";
            $text .= "sequritySender = '".$result[0][security_sender]."'"."\n";
        }
        if($i == 4)
        {
            $text .= "transactionChannel = '".$result[0][transaction_Channel]."'"."\n";
        }
        if($i == 5)
        {
            $text .= "transactionMode = '".$result[0][transaction_Mode]."'"."\n";
        }
        if($i == 6)
        {
            $text .= "userLogin = '".$result[0][user_Login]."'"."\n";
        }
        if($i == 7)
        {
            $text .= "userPwd = '".$result[0][user_Pwd]."'"."\n";
        }
        if($i == 8)
        {
            $text .= "paymentType = '".$result[0][payment_Type]."'"."\n";
        }
        if($i == 9)
        {
            $text .= "presentationCurrency = '".$result[0][presentation_Currency]."'"."\n";
        }
        if($i == 10)
        {
            $text .= "[view]"."\n";
            $text .= "src = '".$result[0][src]."'"."\n";
        }
        if($i == 11)
        {
            $text .= "language = '".$result[0][language]."'"."\n";
        }
        if($i == 12)
        {
            $text .= "style = '".$result[0][style]."'"."\n";
        }
       
    }
    
    if($_GET['paymentType'] == 'CC')
    {
      $text .= "brands[] = 'VISA'"."\n";
      $text .= "brands[] = 'MASTER'"."\n";
     
    }
    if($_GET['paymentType'] == 'VA')
    {
      $text .= "brands[] = 'PAYPAL'"."\n";
    }
    
    $text .= "[soap]"."\n";
    $text .= "url = 'http://debugservices.fine-trade.org/PayOnOrderHandling.svc?WSDL'"."\n";
    $text .= "username  = 'extensions'"."\n";
    $text .= "password = 'testExtensions'"."\n";
    $text .= "options[] = false"."\n";
    $text .= "importIfPending = false"."\n";
    
    if (file_exists('LoviitLib/config.ini')) {
        unlink('LoviitLib/config.ini');
    } 
    $myFile = "LoviitLib/testFile.txt";
    $fh = fopen($myFile, 'w') or die("can't open file");
    fwrite($fh, $text);
    fclose($fh);
    rename("LoviitLib/testFile.txt","LoviitLib/config.ini");

    Преамбула: для конфигурации библиотеки передаётся ассоциативный массив в конструктор. Если передаётся null, то для конфигурации используется файл config.ini с дефолтными настройками, который находится в корне библиотеки.
    Этот код исполняется при каждой инициализации библиотеки (при каждом чекауте).
    Ремарка: после запроса к db результатом является ассоциативный массив.
    И да, это код из модуля для prestashop cms.

    aronsky, 15 Апреля 2014

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

    +155

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $hlblock_id = 3;
    		$hlblock = HL\HighloadBlockTable::getById($hlblock_id)->fetch();
    		$entity = HL\HighloadBlockTable::compileEntity($hlblock);
    
    		$main_query = new Entity\Query($entity);
    		$main_query->setSelect(array('*'));
    		$main_query->setFilter(array('=UF_NAME' => $arOLDItem['material']));
    		$result = $main_query->exec();
    		$result = new CDBResult($result);
    		$row = $result->Fetch();

    Bitrix, HIGHLOAD инфоблоки, данная запись равносильна SQL запросу SELECT * FROM %таблица_название_которой_хранится_в_бд_ под_номером_3% WHERE UF_NAME = $arOLDItem['material']

    +зацените супер CamelCase от битрикса

    TBoolean, 15 Апреля 2014

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

    +133

    1. 1
    Добрый вечер, цыплята.

    Сосево из ширинки, ебля с порога.

    KonardStuard, 14 Апреля 2014

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

    +152

    1. 1
    2. 2
    3. 3
    4. 4
    if (ctype_space($text[$pos] && $pos < $len)) {
        while (ctype_space($text[$pos++]) && $pos < $len);
        $pos--;
    }

    Написал я когда-то такое и подумал: а какой смысл в $pos++ в последней итерации, если потом сразу $pos--?
    И тут до меня дошло, что
    while (ctype_space($text[$pos++]) && $pos < $len);
    это не то же самое, что
    while (ctype_space($text[$pos]) && $pos < $len) $pos++;
    ибо в первом случае $pos++ выполнится в последней итерации, даже если ctype_space возвратит false.
    И в итоге заоптимизировал до while (ctype_space($text[$pos]) && $pos < $len) $pos++; (уже без ифа и декремента).

    Мораль: нефиг выпендриваться (ставить инкременты и декременты в условия), если можно написать по-простому.

    arzeth, 14 Апреля 2014

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

    +153

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    <?php if(isset($the_cat_id)): ?>
        <?php
            $query_args['showposts'] = $brp_count_category;
            $query_args['cat'] = $the_cat_id;
        ?>
    <?php else: ?>
        <?php
            $query_args['showposts'] = $brp_count_index;
        ?>
    <?php endif; ?>

    { }? Нет, не слышали...

    russling, 14 Апреля 2014

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

    +128

    1. 1
    Я вернулся, вы рады?

    Дебил ХДДДДДДД

    Pizda, 12 Апреля 2014

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

    +153

    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
    public function filters($collection)
    	{
    		$className = $collection->modelName();
    		$filters = null;
    		$config = $this->getConfig($className)->admin_panel;
    		if (!empty($config['filters'])) {
    			$filters = $config['filters'];
    		}
            if (!$filters) {
                return $collection->raw();
            }
            foreach ($filters as $field => $value) {
                if (strpos($value, '||')) {
                    $or = explode('||', $value);
                    $where = "";
                    foreach ($or as $value) {
                        if (strpos($value, '::') !== false) {
                            $value = call_user_func(trim($value));
                        }
                        $where .= $field . '="' . $value . '" OR ';
                    }
                    $collection->where('(' . substr($where, 0, -4) . ')');
                } else {
                    if (strpos($value, '::') !== false) {
                        $value = call_user_func(trim($value));
                    }
                    $collection->where($field, trim($value));
                }
            }
    		return $collectio->raw();
    	}

    фильтруем коллекцию блять!

    greshnik, 11 Апреля 2014

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