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

    +167.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
    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
    <?php
    function daybefore($j){
    $day = date('d');
    $month = date('m');
    $year = date('Y');
    for ($i=0; $i<$j; $i++) { 
    if ($day==1) {
        if ($month == 1) {
            $day = 31;
            $month = 12;
            $year = $year - 1;
        } else {
            $month = $month - 1; 
            switch ($month) {
                case 01:
                    $maxdays=31;
                    break;
                case 02:
                    $a = $year / 4;
                    $b = ceil($a);
                    if ($a==$b){                
                         $maxdays=29;
                    } else {
                          $maxdays=28;
                    }
                    break;
                case 03:
                    $maxdays=31;
                    break;
                case 04:
                    $maxdays=30;
                    break;
                case 05:
                    $maxdays=31;
                    break;
                case 06:
                    $maxdays=30;
                    break;
                case 07:
                    $maxdays=31;
                    break;
                case 08:
                    $maxdays=31;
                    break;
                case 09:
                    $maxdays=30;
                    break;
                case 10:
                    $maxdays=31;
                    break;
                case 11:
                    $maxdays=30;
                    break;
                case 12:
                    $maxdays=31;
                    break;
            }
            $day = $maxdays;
            $year = $year;
        }
    } else {
        $day = $day - 1;
        $month = $month;
        $year = $year;
    }}
    return "$year-$month-$day";
    }
    echo daybefore(3);
    ?>

    Отсюда:
    http://php.net/manual/en/function.date.php

    hdkeeper, 17 Марта 2010

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

    +188.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
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    SELECT
    CONCAT('<td align=center><input type=Checkbox name=del[] value=', t1.id, '>') AS 'X'
    ,CONCAT('<td align=center>', t1.id) AS '\#'
    ,CONCAT('<td align=center><a href=index.php?func=$func&ptab=$ptab&pid=$pid&id=',  t1.id, '>', IF(t1.name<>'', t1.name, '<i>Pending...</i>'), '</a>') AS 'Transaction ID'
    ,CONCAT('<td><a href=index.php?func=user&id=',  t2.id, '>', CONCAT(t2.fname, ' ', t2.lname), '</a>') AS 'User'
    ,CONCAT('<td align=center><a href=index.php?func=answers&ptab=order_id&pid=',  t1.order_id, '>history</a>') AS 'Med'
    ,CONCAT('<td align=right>', t1.amt, ' ') AS 'Amount'
    ,CONCAT('<td align=center style=\"font-size: 10px;\" title=\"', t1.data_ord, '\">',  LEFT(t1.data_ord, 10)) AS 'Order date'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  IF(t1.data_pay, LEFT(t1.data_pay, 10), '<b>Not paid</b>')) AS 'Pay date'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  IF(t1.data_send, LEFT(t1.data_send, 10), '<b>Not sent</b>')) AS 'Send date'
    ,CONCAT('<td align=center><a href=index.php?func=items&ptab=$func&pid=',  t1.id, '>', sum(t3.quant), ' Items</a>') AS '# items'
    #,CONCAT('<td align=center><a href=index.php?func=answers&ptab=order_id&pid=',  t1.order_id, '>', count(t7.id), ' answ</a>') AS '# answ'
    ,CONCAT('<td align=center>', CASE WHEN (t1.sv_type=2) THEN \"Waiting\" WHEN (t1.sv_type=-2) THEN \"<font color=FF0000><b>Rejected</b></font>\" WHEN (t1.sv_type=-1) THEN \"<font color=FF0000>Declined</font>\" WHEN (data_send AND track_num2 <> '') THEN \"<b>Re-Done</b>\" WHEN (data_send) THEN \"<b>Done</b>\" WHEN (t1.sv_type=1) THEN \"<font color=008080>Ready to ship</font>\" WHEN (data_pay) THEN \"<font color=008000>Approved</font>\" WHEN (t1.err > 0) THEN \"<font color=FF0000>Failed</font>\" ELSE \"<font color=808080>Pending</font>\" END) AS 'Status'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  t1.doctor) AS 'D'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  t1.bonus) AS 'B'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  t1.err) AS 'Err'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  t1.sv_type) AS 'S#'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  t1.pay) AS 'PM'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  t1.partner) AS 'P'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  MID(t6.url, 8)) AS 'Shop'
    ,CONCAT('<tr><td colspan=19 style=\"font-size: 10px;\"><a target=\"_blank\" href=\"',  t1.referer, '\"><b>URL Referrer</b>: ', LEFT(t1.referer, 150), '</a><tr><td colspan=19 bgcolor=55555>') AS ''
    
    FROM $func t1
     и т.д.

    Такой вот sql-запрос с html разметкой. А вы говорите MVC :)

    awax, 17 Марта 2010

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    if (mysql_num_rows($res)) {while($row = mysql_fetch_assoc($res)) {
       $aSingStat[] = $row;
       }
    }

    толи строчек жалко, толи решил обфусцыровать код для меньшей узнаваемости.
    написал уже б так: if (mysql_num_rows($res)) while($row = mysql_fetch_assoc($res)) $aSingStat[] = $row;
    Тогда б я вообще не парился и дропнул нафиг строчку.

    Андрюха, не пиши больше так!
    Вот пример как надо писать http://www.sergunik.name/?p=178

    Sergunik, 16 Марта 2010

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

    +160.6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if(isset($_POST['add_st']) && $_POST['add_st'] != false && $_POST['add_st'] != '')
    { 
    	if($res=mysql_query("select max(ordering) from category3 where category2=".$cat)) 
    		{
    			$ord=mysql_fetch_row($res);
    			$order=$ord[0]+1;
    		}

    $_POST['add_st'] - из формы с <input type='submit' name='add_st' value='Сохранить' />

    Я уж не говорю, что $order можно было сделать одним запросом

    pasha, 16 Марта 2010

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $text=strip_tags($text);
    $text=substr("$text", 0, 350);
    echo"<div align=justify>";	
    echo"$text ";
    echo"... ";
    echo  "<a  href=../news/viewnews.php?kley=$kley>>></div><hr></td></tr>";
    echo "</table>";

    Какой то бянист не мог через одно ехо вывести я уже молчу про двойные скобки...
    автор неизвестен

    dobs2005, 16 Марта 2010

    Комментарии (13)
  6. 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)
  7. 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)
  8. 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)
  9. PHP / Говнокод #2766

    +144.8

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

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

    vitalybaev, 11 Марта 2010

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

    +164.1

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

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

    HyperGeek, 11 Марта 2010

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