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

    +151.4

    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
    CREATE TABLE `pm_keywords` (
      `id` int(11) unsigned NOT NULL auto_increment,
      `keyword` varchar(255) default NULL,
    ....
      PRIMARY KEY  (`id`),
      UNIQUE KEY `uniq_keyword` (`keyword`),
    ) ;"
    
    
    
    
    
    
    
    	$sql = "SELECT keyword 
    		FROM pm_keywords 
    		WHERE active = 0
    		ORDER BY rand()
    		LIMIT ".intval($newKeywords);
    	$q = mysql_query($sql);
    
    	$keywords = array();
    	while ($r = mysql_fetch_assoc($q)) {
    		$keywords[] = mysql_real_escape_string($r['keyword']);
        }
        $newKeywordsActual = count($keywords);
    	$sql = "UPDATE `pm_keywords` SET
      			active = 1, 
    			lastupdate = '".date('Y-m-d H:i:s')."'
    		WHERE keyword IN ('".implode("','", $keywords)."')
    		LIMIT ".$newKeywordsActual;
    	mysql_query($sql);

    WHERE keyword IN ('".implode("','", $keywords)."')

    zxm, 25 Февраля 2010

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

    +162.1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if(!(strpos(strtolower($to),'ontent-transfer-encoding')===false)) {
    
     ...
    
    }

    j.me, 25 Февраля 2010

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

    +162.1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if ( !empty($a1) ||
         !empty($a1) && !empty($a2) ||
         !empty($a1) && !empty($a2) && !empty($a3) ||
         !empty($a1) && !empty($a2) && !empty($a3) || && !empty($a4) ||
         !empty($a1) && !empty($a2) && !empty($a3) || && !empty($a4) || && !empty($a5) ||
    ...
         !empty($a1) && !empty($a2) && !empty($a3) || && !empty($a4) || && !empty($a5) || && ... !empty($a8) )
    {
     // что-то делать...
    }

    Уже и не припомню где именно, но всретил я такую проверочку на рабочем сайте:
    После небольшой оптимизации получилось нормально условие... кто скажет какое ???

    Death, 24 Февраля 2010

    Комментарии (52)
  4. C# / Говнокод #2660

    +966.3

    1. 1
    2. 2
    int factor = (chbFactor.Checked) ? 1 : 0; // bool to int
    factor = (factor * 2) - 1; // -1 or +1

    Вторая строчка превращает 0 в -1 а единичку не трогает

    Vidmak, 24 Февраля 2010

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

    +176.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if(empty($username) || $username){
      // ...
       if($id == $row['id'] || $row['id'] == $id || ($row['id'] == $id && $id == $row['id'])){
          // ...
       }
    }

    Было дело года два назад...
    Форма авторизации, как я мог написать такой бред? =)

    Zver, 24 Февраля 2010

    Комментарии (13)
  6. Java / Говнокод #2658

    +77.1

    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
    public static boolean isValidUser(String user)
    	{
    		if(user == null) return true;
    		int len = user.length();
    		if (len > 255) return false;
    		char c;
    		for(int i=0; i<len; i++)
    		{
    			c = user.charAt(i);
    			if (c <= ' ') return false;
    			if (c == ':') return false;
    			if (c == '@') return false;
    			if (c == '"') return false;
    			if (c == '>') return false;
    			if (c == '<') return false;
    			if (c == '/') return false;
    			if (c == '\'') return false;
    			if (c == '&') return false;
    			if (c == '\u077F') return false;
    			if (c == '\u0FFE') return false;
    			if (c == '\u0FFF') return false;
    		}
    		return true;
    	}

    проверка имени пользователя на плохие символые в Jeti

    danilissimus, 24 Февраля 2010

    Комментарии (13)
  7. C++ / Говнокод #2657

    +45.6

    1. 1
    return (hWnd) ? (bool)ShowWindow(hWnd, (state) ? SW_NORMAL : SW_HIDE) : false;

    Я долго пытался понять, что я имел ввиду.

    Altravert, 24 Февраля 2010

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

    +160.7

    1. 1
    $_date	= date("Y-m-d", mktime("0", "0", "0", date("m"), date("d")-2, date("Y")));

    нашел в сорсе одного из наших сайтов

    polizei, 24 Февраля 2010

    Комментарии (28)
  9. Java / Говнокод #2655

    +75.8

    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
    package core;
    
    public class Cryptor {
        /**
         * Encodes the String.
         * @param s Source string.
         * @param p Password.
         * @return String
         */
        public static String encode(String s, String p) {
            byte[] str = s.getBytes();
            int h = summ(p);
    
            for(int i = 0; i < str.length; i++) {
                str[i] = (byte) (str[i] ^ h ^ i);
            }
    
            return new String(str,0,str.length);
        }
    
        /**
         * Decodes the String.
         * @param s Source string.
         * @param p Password.
         * @return String
         */
        public static String decode(String s, String p) {
            return encode(s, p);
        }
    
        /**
         * Calculater the hash summ of password.
         * @param p Password.
         */
        public static int summ(String p) {
            int r = -1;
            byte[] str = p.getBytes();
            for(int i = 0; i < str.length; i++) r+=str[i]+i;
            return r;
        }
    }

    danilissimus, 24 Февраля 2010

    Комментарии (8)
  10. C++ / Говнокод #2654

    +59

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    QByteArray icqMessage::convertToByteArray(const quint8 &d)
    {
    	QByteArray packet;
    	packet[0] = d;
    	return packet;
    }

    Обнаружено в сорцах qutim'а. Про memcpy разработчики, видимо, не слышали, также, как и про метод append() в классе QByteArray.
    А еще не совсем понятно, зачем функции для конвертирования байт-эррэев в цифры и обратно объявлены и реализованы В КАЖДОМ файле, где используются. Про #include файла, в котором один раз можно реализовать все функции, разработчики, наверное, тоже слышали мельком.

    RankoR, 23 Февраля 2010

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