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

    +57

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if($atributId){
          $sql = "UPDATE directory_atributes SET name = '$newName' WHERE id = $atributId LIMIT 1";
          $db-> Query($sql);
          die();
     } else{
          die();
     }

    Депрессивное программирование. В любом случае ты умрёшь.

    somnambulism, 01 Октября 2012

    Комментарии (51)
  2. SQL / Говнокод #11854

    −121

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    SELECT ISNULL(SUM(1), 0) 
     FROM Stat_DailySnapshotPurchases
     WHERE 1=1
      AND ForDate BETWEEN '2012-08-01' AND '2012-09-14'
      AND ItemType = 4

    Оригинальный способ подсчета количества строк

    leon_mz, 01 Октября 2012

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

    +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
    // Очистка полей формы
    function clearForm(formName) {
    	//var ff = document.getElementById(formName);
    	var ff = document.forms[formName];
    	for (var i=0; i<ff.elements.length; i++) {
    		if (ff.elements[i].type == "text") ff.elements[i].value="";
    		if (ff.elements[i].type == "select-one") ff.elements[i].value="";
    		if (ff.elements[i].type == "checkbox") ff.elements[i].checked=false;
    		if (ff.elements[i].type == "radio") {
    			ff.elements[i].value="0";
    			ff.elements[i].checked=false;
    		}
    	}
    }

    Действительно, зачем this.form.reset() использовать?

    someuglymf, 01 Октября 2012

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

    +102

    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
    ...
    while (GetRateStumpNew(_rateStumps, ddtdDateBegin, dDateEnd, out sstrRateStumpsNew,
                                               out ddtDateEditrateStumps, out ddouRateStumpsNew))
    {
        //если хоть раз сюда зашло, то ставим флагец
        isStumpForFirst = true;
    
        //записываем дату
        ddtdDateBegin = ddtDateEditrateStumps;
    
        //если один раз зашли, то дальше можно не проверять
        goto l1; //временно
    }
    l1:
    ...

    Полный контроль над последовательностью выполнения кода

    CrazyMORF, 01 Октября 2012

    Комментарии (11)
  5. JavaScript / Говнокод #11851

    +157

    1. 1
    this.unbind('click').die('click').off('click').on('click', _start)

    no comments

    Nemoden, 01 Октября 2012

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

    −123

    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
    Функция   СтрокаБезПробелов(sP,lenP= Неопределено) Экспорт
    	
    // убрать пробелы (на самом деле, символы 160) в строке sP
    // (после преобразования числа в cтроку)
    // если нужно - дописать пробелов спереди до длины lenP
    
     s_ = СтрЗаменить(Строка(sP),Символ(160),"");
     
     Если lenP>0 Тогда
          l_ = СтрДлина(s_);
    	  Если l_<lenP Тогда
    		   j = lenP-l_;
    		   Если j=1 Тогда
    			    s_ = " "+s_;
    		   Иначе	   
    		    Если j=2 Тогда
    			     s_ = "  "+s_;
    		    Иначе	   
    		     Если j=3 Тогда
    			      s_ = "   "+s_;
    		     Иначе	   
    		      Если j=4 Тогда
    			       s_ = "    "+s_;
    		      Иначе	   
    		       Если j=5 Тогда
    			        s_ = "     "+s_;
    		       Иначе	   
    		        Если j=6 Тогда
    			         s_ = "      "+s_;
    		        Иначе	   
    		         Если j=7 Тогда
    			          s_ = "       "+s_;
    		         Иначе	   
    		          Если j=8 Тогда
    			           s_ = "        "+s_;
    		          Иначе	   
                      КонецЕсли;
                     КонецЕсли;
                    КонецЕсли;
                   КонецЕсли;
                  КонецЕсли;
                 КонецЕсли;
                КонецЕсли;
               КонецЕсли;
          КонецЕсли;
     КонецЕсли;
      
     Возврат s_;
    КонецФункции

    Вот такая замена функции Формат нашлась в исходниках от одного из внедренцев.

    bytemdfab, 01 Октября 2012

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

    +54

    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
    function mail_mime_to_array($imap,$mid,$parse_headers=false) 
             { 
    
                 $mail = imap_fetchstructure($imap,$mid);
    
                    // ИМЕННО ПОЧИНИЛ
                    if(!isset($mail->parts))  {
    
                            $mail->parts = array();
                            $mail->parts[0]['type'] = $mail->type;
                            $mail->parts[0]['encoding'] = $mail->encoding;
                            $mail->parts[0]['ifsubtype'] = $mail->ifsubtype;
                            $mail->parts[0]['subtype'] = $mail->subtype;
                            $mail->parts[0]['ifdescription'] = $mail->ifdescription;
                            $mail->parts[0]['ifid'] = $mail->ifid;
                            $mail->parts[0]['bytes'] = $mail->bytes;
                            $mail->parts[0]['ifdisposition'] = $mail->ifdisposition;
                            $mail->parts[0]['disposition'] = $mail->disposition;
                            $mail->parts[0]['ifdparameters'] =$mail->ifdparameters;
                            $mail->parts[0]['dparameters'] =$mail->dparameters;
                            $mail->parts[0]['ifparameters'] =$mail->ifparameters;
                            $mail->parts[0]['parameters'] =$mail->parameters;
    
                    }
    
                 $mail = mail_get_parts($imap,$mid,$mail,0); 
    
      
                    // ИМЕННО ПОЧИНИЛ
                    if(!isset($mail->parts))  {
    
                        $mail[1]['data'] = imap_base64($mail[1]['data']);  
                    }
    
                 if ($parse_headers) $mail[0]["parsed"]=mail_parse_headers($mail[0]["data"]); 
    
                 return($mail); 
    
             }

    мое говно-детище

    АЙФОН к примеру не отправляет заголовки и я не мог правильно под него запарсить вложения к почтовому сообщению.
    Решил не париться и именно починил, взял скотч решил эту проблему, просто залепил ее.

    Самое обидное, что даже не знаю как ее по нормальному решить.

    nepster, 01 Октября 2012

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

    +66

    1. 1
    2. 2
    3. 3
    if($HTTP_SESSION_VARS['username'] == $_SESSION['username']){
      include($incl['userrights']);
    }

    я плакал :(

    virtual_cia, 30 Сентября 2012

    Комментарии (5)
  9. Си / Говнокод #11847

    +141

    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
    #include <stdio.h>
    
    void swap(long *a,long *b){
      *a=(*a<<sizeof(*a)*4);
      *a+=*b;
      *b=*a ^ *b;
      *b=(*b>>sizeof(*a)*4);
      *a=(*a<<sizeof(*a)*4);
      *a=(*a>>sizeof(*a)*4);
    }
    
    int main(){
     long a=22807;
     long b=1012;
       printf("a=%ld b=%ld\n",a,b);
     swap(&a,&b);
      printf("a=%ld b=%ld\n",a,b);
    }

    Swap variables without third variable

    AliceGoth, 29 Сентября 2012

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

    +50

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    /**
         * Что я курил, когда это писал? Почему нельзя было date('H:i:s', $time) ??? +___=
         * @param $seconds
         * @return string
         */
        private static function prettySecondsPrint($seconds){
            return str_pad((int)($seconds / 3600), 2, '0', STR_PAD_LEFT)
                .':'.str_pad((int)(($seconds % 3600) / 60), 2, '0', STR_PAD_LEFT)
                .':'.str_pad($seconds % 60, 2, '0', STR_PAD_LEFT);
        }

    А это, к сожалению, мое творение) Комменарий приписал когда позже просматривал код и обнаружил это)

    et, 28 Сентября 2012

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