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

    +163

    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
    $metka=0;
    $reason = $form->getValue("reason");
    if ($activedate < $datenow)
    	{
    		$metka++;
    	}
    
    if (trim($reason) == "")
    	{
    		$metka++;
    	}
    if ($conflict>0)
    	{
    		$metka++;
    	}
    
    if ($metka == 0)
    	{
    		for ($i=0;$i<count($srid);$i++)
    		{
    			$this->changeRates($srid[$i],$rate[$i],$datenow,$activedate,$reason);
    		}
    		pageAlert::nextPageAlert("Ставки по тарифам успешно сохранены!", PAGE_ALERT_SUCCESS);
    	}

    Вот как кодят программисты, не слышавшие про исключения и return false при ошибках

    1Ad_Astra1, 18 Мая 2010

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

    +165

    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
    for($i=0; $i < $fldCount; $i++) {
          if($fldType[$i]==8) {
            eval("\$f_".$fld[$i]."_year = substr(\$f_".$fld[$i].", 0, 4);");
            eval("\$f_".$fld[$i]."_month = substr(\$f_".$fld[$i].", 5, 2);");
            eval("\$f_".$fld[$i]."_day = substr(\$f_".$fld[$i].", 8, 2);");
            eval("\$f_".$fld[$i]."_hours = substr(\$f_".$fld[$i].", 11, 2);");
            eval("\$f_".$fld[$i]."_minutes = substr(\$f_".$fld[$i].", 14, 2);");
            eval("\$f_".$fld[$i]."_seconds = substr(\$f_".$fld[$i].", 17, 2);");
          }
          else if ($fldType[$i]==6 && $fldValue[$i]) {
            ${"f_".$fld[$i]."_old"} = $fldValue[$i];
    
            $fileinfo = $db->get_row("SELECT * FROM `Filetable`
              WHERE `Field_ID` = ".$fldID[$i]." AND `Message_ID` = ".$message, ARRAY_A);
        
            if ($fileinfo) {
              ${"f_".$fld[$i]} = $SUB_FOLDER . rtrim($HTTP_FILES_PATH, "/") . $fileinfo["File_Path"] . "h_" . $fileinfo["Virt_Name"];
              ${"f_".$fld[$i]."_url"} = $SUB_FOLDER . rtrim($HTTP_FILES_PATH, "/") . $fileinfo["File_Path"] .        $fileinfo["Virt_Name"];
              ${"f_".$fld[$i]."_name"} = $fileinfo["Real_Name"];
              ${"f_".$fld[$i]."_size"} = $fileinfo["File_Size"];
              ${"f_".$fld[$i]."_type"} = $fileinfo["File_Type"];
            }
            else {
              preg_match("/^(.+?(\.[^.]+)?):(.+):(.+)$/", $fldValue[$i], $regs);
              ${"f_".$fld[$i]} = $SUB_FOLDER.$HTTP_FILES_PATH.$fldID[$i]."_".$message.$regs[2];
              ${"f_".$fld[$i]."_url"} = $SUB_FOLDER.$HTTP_FILES_PATH.$fldID[$i]."_".$message.$regs[2];
              ${"f_".$fld[$i]."_name"} = $regs[1];
              ${"f_".$fld[$i]."_size"} = $regs[4];
              ${"f_".$fld[$i]."_type"} = $regs[3];
            }
          }
        }

    И ещё один кусочек из того же файла (/netcat/message.php).

    telnet, 18 Мая 2010

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

    +166

    1. 1
    2. 2
    if($posting == 0) {
      if(!isset($posting) && count($fld)) {

    Всё та же NetCat 3.6.

    telnet, 18 Мая 2010

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

    +166

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    MyClass * obj = (MyClass*)true;
    while (obj)
    {
        obj = GetObj();
        // ...
    }

    glook, 18 Мая 2010

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

    +163

    1. 1
    $NETCAT_FOLDER = join( strstr(__FILE__, "/") ? "/" : "\\", array_slice( preg_split("/[\/\\\]+/", __FILE__), 0, -3 ) ).( strstr(__FILE__, "/") ? "/" : "\\" );

    Метод определения абсолютного пути к папке, лежащей на сколько-то уровней выше текущей.

    telnet, 18 Мая 2010

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

    +149

    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
    $sql = " SELECT *, DATE_FORMAT( `date`, '%d.%m.%y %H:%i:%s' ) as `date` FROM `messages` ORDER BY `id` DESC LIMIT {$n->start()},".PNUMBER;
    	if ( $qr=mysql_query( $sql ) )
    	{
    		
    			while ( $row = mysql_fetch_assoc( $qr ) )
    			 {
    				echo htmlspecialchars( $row['name'] ).' ['.htmlspecialchars( $row['date'] ).']<br>';
    				echo smile( htmlspecialchars( $row['message'] ) ).'<br>';
    				if ( $row['otvet'] )
    					echo '<b>Ответ: '.smile( htmlspecialchars( $row['otvet'] ) ).'</b><hr>';
    				else
    					echo '<hr>';
    			}
    	}
    	else 
    	{
    		echo 'Произошла системная ошибка';
    		mysql_function_error( 'Возникла ошибка при запросе. SQL: '.$sql.'|ERROR: '.mysql_error( ) );
    	}

    ...

    lugaro, 17 Мая 2010

    Комментарии (9)
  7. SQL / Говнокод #3250

    −855

    1. 1
    2. 2
    3. 3
    4. 4
    where 
      DEP_ID = idDep and  ID = idOrd and  
      DEP_ID = idDep and  ID = idOrd and  
      DEP_ID = idDep and  ID = idOrd

    gorsash, 17 Мая 2010

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

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    if (!$defaults && !is_null($defaults))
    {
      $this->form->setDefaults($defaults->toArray());
    }

    Все три строчки, зато какие! :)

    kovel, 17 Мая 2010

    Комментарии (9)
  9. VisualBasic / Говнокод #3248

    −99

    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
    'Поиск с использованием Mid()
    '-------
    Dim B
    'переменная Б - номер символа
    Dim foundn
    ' номер найденной строки
    Dim A As String
    'A - текст в котором ищем
    Dim find As String
    '--------
    A="this is text ! ololo 12345 abcd"
    Call found("ololo",1)
     
    Function found(Text As String, start)
    B = start
    find = Text
    Do While Not (Mid(A, B, Len(find)) = find)
    B = B + 1
    If B > 1000000 Then
    MsgBox ("overfloow")
    'если номер символа > 10000000 - остановка процесса
    End
    End If
    Loop
    foundn = B
    End Function

    Поиск в string

    hromjo, 17 Мая 2010

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

    +166

    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
    for ( ; $k <= 15; ++$k ) {
    	$map[$k] = $mx2[$k];
    
    	// A
    	if ( $map[$k] == 10 && $k == 1 || $map[$k] == 10 && $k == 2 || $map[$k] == 10 && $k == 3 ) {
    		$map[$k] = rand( 1, 9 );
    	}
    
    	// B
    	if ( $map[$k] == $map[$k-1] ) {
    		$map[$k] = rand( 1, 9 );
    	}
    
    	// C
    	if ( $map[$k] == $map[$k-2] && ( $k == 3 || $k == 6 || $k == 9 || $k == 12 || $k == 15 ) ) {
    		$map[$k] = rand( 1, 9 );
    	}
    
    	// B
    	if ( $map[$k] == $map[$k-1] ) {
    		$map[$k] = rand( 1, 9 );
    	}
    	// C
    	if ( $map[$k] == $map[$k-2] && ( $k == 3 || $k == 6 || $k == 9 || $k == 12 || $k == 15 ) ) {
    		$map[$k] = rand( 1, 9 );
    	}
    
    	// B
    	if ( $map[$k] == $map[$k-1] ) {
    		$map[$k] = rand( 1, 9 );
    	}
    
    	// C
    	if ( $map[$k] == $map[$k-2] && ( $k == 3 || $k == 6 || $k == 9 || $k == 12 || $k == 15 ) ) {
    		$map[$k] = rand( 1, 9 );
    	}
    
    	// B
    	if ( $map[$k] == $map[$k-1] ) {
    		$map[$k] = rand( 1, 9 );
    	}
    
    	// C
    	if ( $map[$k] == $map[$k-2] && ( $k == 3 || $k == 6 || $k == 9 || $k == 12 || $k == 15 ) ) {
    		$map[$k] = rand( 1, 9 );
    	}
    
    	// B
    	if ( $map[$k] == $map[$k-1] ) {
    		$map[$k] = rand( 1, 9 );
    	}
    
    	// C
    	if ( $map[$k] == $map[$k-2] && ( $k == 3 || $k == 6 || $k == 9 || $k == 12 || $k == 15 ) ) {
    		$map[$k] = rand( 1, 9 );
    	}
    }

    $mx2 - массив из 15 элементов(элементы имеют значение от 1 до 10, расположены рандомно). Генерируется таким образом новый массив $map, в котором не могут быть два одинаковых элемента подряд(а так же текущий и пред-предыдущий не должны быть равны). Как бы сделал типичный программист? Зафигачил бы в цикле цикл, в которм бы проверял равенство текущего элемента и предыдущего. А вот так сделал мудак со стажем. Не удивительно, что периодически всё работает не так как надо...

    azzz, 17 Мая 2010

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