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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    if (!defined(DIRECTORY_SEPARATOR)) {
      $sep = (substr(strtolower(PHP_OS),0,3) == 'win') ? '\\' : '/';
      define('DIRECTORY_SEPARATOR', $sep);
    }

    Даже если и так, то может быть и MAC OS'овский разделитель учтём???
    Я-то думал обычный slash - решение всех проблем, или на МАКАХ подавляющее
    число хостингов что ли?

    dwinner, 03 Декабря 2010

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

    +155

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $sql = mysql_query("SELECT * FROM `pages` WHERE `url` = '".$_GET['doid']."'") or die("Query error");
    			if ($r = mysql_fetch_array($sql)) {
    			
    				if($r['public']=='1') mysql_query("UPDATE `pages` SET `public` = '0' WHERE `url` = '".$_GET['doid']."'");
    				else mysql_query("UPDATE `pages` SET `public` = '1' WHERE `url` = '".$_GET['doid']."'");
    			
    			}

    ZOTTIG, 03 Декабря 2010

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

    +145

    1. 1
    2. 2
    3. 3
    while($errors as $err) { 
         $text_error .= '- '.$err.'<br>'; 
    }

    Мартин, 02 Декабря 2010

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if (OnCreated != null)
                {foreach (EventHandler<CreatedEventArgs> handler in OnCreated.GetInvocationList())
                    {
                        handler(this, args);
                    }
    }

    Enzoy, 02 Декабря 2010

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

    +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
    <? 
    // Функция для того, чтобы иЗ***оВаТь текст 
    $str = 'бросайте вы корявить текст'; 
    
    function koryavka ($t){ 
    $c = strlen($t); 
    
    for($i=0;$i<$c;$i++) { 
    $t[$i] = (is_int($i/2)) ? strtoupper($t[$i]) : $t[$i]; 
    $ret[] =  $t[$i];  
    } 
    
    return implode('',$ret); 
    } 
    
    echo koryavka ($str); 
    ?>

    Aligan, 01 Декабря 2010

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    public static function encode($value, $cycleCheck = false, $options = array())
        {
            $encoder = new self(($cycleCheck) ? true : false, $options);
    
            return $encoder->_encodeValue($value);
        }

    Zend Framework, Zend_Json_Encoder

    dr_von_ozgg, 30 Ноября 2010

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

    +170

    1. 1
    2. 2
    $fh = fopen($filename, r);
    while(($str = fread($fh, 1024)) != null) $fsize += strlen($str);

    Вот так теперь в PHP принято определять размер файла.

    Sandro, 30 Ноября 2010

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    $ptn = "^[а-яА-Я]{1,}$";
    $str = "т";
    ereg($ptn, $str, $matches);
    print_r($matches);

    Почему не видит русской маленькой буквы "т". Это из-зи юникода? ПХП - говно значит

    increazon, 30 Ноября 2010

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

    +179

    1. 1
    eval(file_get_contents("../myClass.php"));

    Интересно, он подозревает о существовании функции include ?

    DropWorld, 29 Ноября 2010

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

    +151

    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
    function clean_url ($url) {
    
      if ($url == '') return;
    
      $url = str_replace("http://", "", strtolower($url));
      $url = str_replace("https://", "", $url );
      if (substr($url, 0, 4) == 'www.')  $url = substr($url, 4);
      $url = explode('/', $url);
      $url = reset($url);
      $url = explode(':', $url);
      $url = reset($url);
    
      return $url;
    }
    
    
    if (clean_url($_SERVER['HTTP_REFERER']) != clean_url($_SERVER['HTTP_HOST'])) die("Hacking attempt!");

    DLE 9.0, /engine/modules/antibot.php
    В браузере выключена передача реферера, последняя строчка особо не нужна, ибо HTTP_REFERER не подделывают только из-за лени, а вот полезные пользователи действительно страдают.
    Да и получение хоста из реферера радует.

    Morgan, 29 Ноября 2010

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