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

    +162.2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    $l = array('q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', 'a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l', 'z', 'x', 'c', 'v', 'b', 'n', 'm', '-', '.');
    $len = 9;
    for ($i = 0; $i < 100; $i++) //цикл для проверки=)
    {
        $login = '';
        while (strlen($login) < $len) {
            $current = $l[mt_rand(0, (((strlen($login) + 1 == $len) || (strlen($login) == 0)) ? count($l) - 3 : count($l) - 1))]; //мама ради миня абратна
            $login. = ((substr($login, strlen($login) - 1, 1)) == $current) ? '' : $current;
        }
    
        echo $login."<br>";
    }

    наверно самый извращенный код для генереции случайних строк который я когда либо писал=)
    примерно такие требования
    в начале и в конце как точки, так и тире быть тоже не должно
    Т.е другими словами, должен начинаться буквой и заканчиваться буквой
    не иметь двух тире и двухточие подряд

    nur, 15 Марта 2010

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

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $file=file('list_less.dat'); 
     for ($i=0;$i<count($file);$i++)
     {
        $f_abbr=substr($file[$i], 0, strpos($file[$i], '|'));
        $f_name=substr($file[$i], strpos($file[$i], '|')+1, strlen($file[$i]));
        $select.='<option value='.$f_abbr.'>'.$f_name;
      }

    почему то
    $file=file('list_less.dat');
    for ($i=0;$i<count($file);$i++)
    {
    $expl=explode('|', $file[$i]
    $f_abbr=$expl[0];
    $f_name=$expl[1]
    $select.='<option value='.$f_abbr.'>'.$f_name;
    }
    мне показалось слишком просто о_О =)(=
    Писал вроде трезвый

    /*Найдено в одном проекте*/

    NFL, 14 Марта 2010

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

    +164.6

    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
    <HTML>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
    </meta>
    <BODY>
    <style>
    <? include "style.css"; ?>
    </style>
    <?
    include "menu.php";
    include "main.php";
    ?>
    </BODY>
    </HTML>

    Своеобразный способ подключения стилей)))
    Из ЛС вконтакта.

    Subsanek, 12 Марта 2010

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

    +144.8

    1. 1
    <?='<?'?>xml version="1.0" encoding="UTF-8"?>

    Иначе думает, что это открывающий PHP тег :-)

    vitalybaev, 11 Марта 2010

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

    +164.1

    1. 1
    $this->get('begin_at') > date('Y-m-32')

    Так я проверяю, что еще не начался месяц даты begin_at (в формате Y-m-d)

    HyperGeek, 11 Марта 2010

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

    +160.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
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    <?php
     $ok = true;
            $argsbackup = $args;
            for ($i = 0, $j = count($args); $i < $j; $i++) {
                $arg = array_shift($args);
                $type = array_shift($signature);
                switch ($type) {
                    case 'int':
                    case 'i4':
                        if (is_array($arg) || !is_int($arg)) {
                            $ok = false;
                        }
                        break;
                    case 'base64':
                    case 'string':
                        if (!is_string($arg)) {
                            $ok = false;
                        }
                        break;
                    case 'boolean':
                        if ($arg !== false && $arg !== true) {
                            $ok = false;
                        }
                        break;
                    case 'float':
                    case 'double':
                        if (!is_float($arg)) {
                            $ok = false;
                        }
                        break;
                    case 'date':
                    case 'dateTime.iso8601':
                        if (!is_a($arg, 'IXR_Date')) {
                            $ok = false;
                        }
                        break;
                }
                if (!$ok) {
                    return new IXR_Error(-32602, 'server error. invalid method parameters');
                }
            }

    предыстория. IRX_Library - XML-RPC server

    вот так оно проверяет параметры к функции. так жестко по массиву ходить не стоит... (((

    nicolay-punin, 11 Марта 2010

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

    +170.9

    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
    <?php
     $mounths["January"]="01";
     $mounths["February"]="02";
     $mounths["March"]="03";
     $mounths["April"]="04";
     $mounths["May"]="05";
     $mounths["June"]="06";
     $mounths["July"]="07";
     $mounths["August"]="08";
     $mounths["September"]="09";
     $mounths["October"]=10;
     $mounths["November"]=11;
     $mounths["December"]=12;
    
     $m=date("F");
     $d=date("d");
     $Y=date("Y");
     $datetime=date("Y")."-".$mounths[$m]."-".date("d")." ".date("H").":".date("i").":".date("s");
     $date=date("Y")."-".$mounths[$m]."-".date("d");
    ?>

    Ээээ, чо? Нарыл в проекте. Отпаиваюсь чаем.

    azzz, 11 Марта 2010

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

    +161.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
    function formatDate($mysqlDate, $time = false) {
                    $date = "";
                    if (is_int($mysqlDate))
                    $stamp = $mysqlDate;
                    else
                    $stamp = strtotime($mysqlDate);
    
                    $date .= date("j", $stamp) . " ";
                    $date .= $this->months[date("n", $stamp) - 1] . " ";
                    $thisYear = date("Y", time());
                    $year = date("Y", $stamp);
    
                    if ($thisYear != $year)
                            $date .= ", " . date("Y", $stamp);
                    if ($time)
                            $date .= " " . date("H:i", $stamp);
    
                    if ($time) return date("d/m/Y H:i");
    					else return date("d/m/Y");
                    return $date;
    
            }

    интересен ход мыслей программиста=)

    nur, 11 Марта 2010

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

    +159.7

    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
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    $q = "SELECT product_id FROM jos_vm_product WHERE product_parent_id=$prodid";
        $res = mysql_query($q);
        if(!$res) die('Error 3: ' . mysql_error());
        
        $td_str=' ';
        $pos_atrribs=array();
        $row=0;
        $sort_by=0;
        $subrows=0;
        $show_cells=0;
        
        while($pos=mysql_fetch_array($res))
        {
          $posid=$pos['product_id'];
          $q1 = "SELECT attribute_value,attribute_name  FROM jos_vm_product_attribute WHERE product_id=$posid ORDER BY attribute_name DESC";
          $res1 = mysql_query($q1);
          if(!$res1) die('Error 4: ' . mysql_error());
          
          $col=0;
          while($posattrib=mysql_fetch_array($res1))
          {
            if($posattrib['attribute_name']=='Код фитинга' || $posattrib['attribute_name']=='Код' || $posattrib['attribute_name']=='Кодфитинга' || $posattrib['attribute_name']=='Ordering code')
            {
              $sort_by=$posattrib['attribute_name'];
            }
            $pos_atrribs[$row][$posattrib['attribute_name']]=$posattrib['attribute_value'];
            $col++;
          }
          
          $q1 = "SELECT product_in_stock FROM jos_vm_product WHERE product_id=$posid";
          $res1 = mysql_query($q1);
          if(!$res1) die('Error 4: ' . mysql_error());
          $stock=mysql_fetch_array($res1);
          
          $pos_atrribs[$row]['Склад']=$stock['product_in_stock'];
          
          $q1 = "SELECT product_price FROM jos_vm_product_price WHERE product_id=$posid";
          $res1 = mysql_query($q1);
          if(!$res1) die('Error 4: ' . mysql_error());
          $price=mysql_fetch_array($res1);
          
          $pos_atrribs[$row]['Цена EUR']=$price['product_price'];
          $pos_atrribs[$row]['posid']=$posid;
          $row++;
        }
    
    function columnSort($sorted, $column) {
            for ($i=0; $i < sizeof($sorted)-1; $i++) 
            {
              for ($j=0; $j<sizeof($sorted)-1-$i; $j++)
                if ($sorted[$j][$column] > $sorted[$j+1][$column]) 
                {
                  $tmp = $sorted[$j];
                  $sorted[$j] = $sorted[$j+1];
                  $sorted[$j+1] = $tmp;
              }
            }
            return $sorted;
        }    
        $sorted = columnSort($pos_atrribs, $sort_by);
        unset($pos_atrribs);
        
        $new_attribs=array();
        $num=0;
        $matches=0;
        for ($i=0; $i < sizeof($sorted); $i++) 
        {
          if(substr($sorted[$i][$sort_by],-2)!='.1' && substr($sorted[$i][$sort_by],-2)!='.4')
          {
            $fs=(int)substr($sorted[$i][$sort_by],0,3);
            $fe=(int)substr($sorted[$i][$sort_by],-3);
            
            for ($j=0; $j<sizeof($sorted); $j++)
            { 
              $ss=(int)substr($sorted[$j][$sort_by],0,3);
              $se=(int)substr($sorted[$j][$sort_by],-3);
              
              if ($fe==$se && $fs<$ss) 
              {
                $new_attribs[$num]=array($sorted[$i],$sorted[$j]);
                $num++;
                $matches++;
              }
            }
          }
        }

    Джомло проект, в ходе запросов(11-46 строки) получает 250+ запросов к БД, и время выполнения только этого куска 40+ секунд. Далее сортировка тоже не слабая.

    kein, 11 Марта 2010

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

    +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
    if ($check==0)
    {
      $query = "SELECT id, title, news, author, date FROM news ORDER BY id DESC LIMIT 10";
    }else{
      $query = "SELECT id, title, news, author, date FROM news ORDER BY id LIMIT 10";	
    }
    $result = mysql_query($query,$db);
    $_count=0;
    while($row=mysql_fetch_array($result))
    {  
    	$_count++;
    }
    
    $result = mysql_query($query,$db);
    while($row=mysql_fetch_array($result))
    {  
    ...

    Считаем кол-во строк в mysql-таблице

    qwase, 11 Марта 2010

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