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

    +91

    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
    // Организовываем вывод сообщений
    do 
    {
        printf ("<div class='border'> \n
        <p class='pa'>    
        Имя отправителя: %s; &nbsp;&nbsp;&nbsp; Дата отправления: %s; &nbsp;&nbsp;&nbsp; <a href='admin.php?exe=answer&id=%s'>Ответ администрации</a> &nbsp;&nbsp;&nbsp; <a href='admin.php?exe=edite&id=%s'>Редактировать</a> &nbsp;&nbsp;&nbsp;  <a href='admin.php?exe=delete&id=%s'>Удалить</a></p>\n<p align='justify'>%s</p>\n<span class='spaa'><i>%s</i></span>\n</div>",  
        $myrow_gb1['name'], $myrow_gb1['dmy'], $myrow_gb1['id'], $myrow_gb1['id'], $myrow_gb1['id'], $myrow_gb1['mes'], $myrow_gb1['kom']);
    }
    while ($myrow_gb1 = mysql_fetch_array($result_gb1)); 
    
    // Проверяем нужны ли стрелки назад
    if ($page != 1) $pervpage = '<a href=admin.php?exe=main&page=1>Первая</a> | <a href=admin.php?exe=main&page='. ($page - 1) .'>Предыдущая</a> | ';
    // Проверяем нужны ли стрелки вперед
    if ($page != $total) $nextpage = ' | <a href=admin.php?exe=main&page='. ($page + 1) .'>Следующая</a> | <a href=admin.php?exe=main&page=' .$total. '>Последняя</a>';
    
    // Находим две ближайшие станицы с обоих краев, если они есть
    if($page - 5 > 0) $page5left = ' <a href=admin.php?exe=main&page='. ($page - 5) .'>'. ($page - 5) .'</a> | ';
    if($page - 4 > 0) $page4left = ' <a href=admin.php?exe=main&page='. ($page - 4) .'>'. ($page - 4) .'</a> | ';
    if($page - 3 > 0) $page3left = ' <a href=admin.php?exe=main&page='. ($page - 3) .'>'. ($page - 3) .'</a> | ';
    if($page - 2 > 0) $page2left = ' <a href=admin.php?exe=main&page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
    if($page - 1 > 0) $page1left = ' <a href=admin.php?exe=main&page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';
    
    if($page + 5 <= $total) $page5right = ' | <a href=admin.php?exe=main&page='. ($page + 5) .'>'. ($page + 5) .'</a>';
    if($page + 4 <= $total) $page4right = ' | <a href=admin.php?exe=main&page='. ($page + 4) .'>'. ($page + 4) .'</a>';
    if($page + 3 <= $total) $page3right = ' | <a href=admin.php?exe=main&page='. ($page + 3) .'>'. ($page + 3) .'</a>';
    if($page + 2 <= $total) $page2right = ' | <a href=admin.php?exe=main&page='. ($page + 2) .'>'. ($page + 2) .'</a>';
    if($page + 1 <= $total) $page1right = ' | <a href=admin.php?exe=main&page='. ($page + 1) .'>'. ($page + 1) .'</a>';
    
    // Вывод меню если страниц больше одной
    
    if ($total > 1)
    {
    Error_Reporting(E_ALL & ~E_NOTICE);
    echo "<center>";
    echo $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$page3right.$page4right.$page5right.$nextpage;
    echo "</center>";
    }

    Продолжение этого: http://govnokod.ru/10169

    Мартин, 03 Мая 2012

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

    +91

    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
    //Постраничная навигация
    $result77 = mysql_query("SELECT str FROM ..."); 
    $myrow77 = mysql_fetch_array($result77);
    $num = $myrow77["str"];
    
    // Извлекаем из URL текущую страницу
    @$page = $_GET['page'];
    
    // Определяем общее число сообщений в базе данных
    $result00 = mysql_query("SELECT COUNT(*) FROM ...");
    $temp = mysql_fetch_array($result00);
    $posts = $temp[0];
    
    // Находим общее число страниц
    $total = (($posts - 1) / $num) + 1;
    $total =  intval($total);
    
    // Определяем начало сообщений для текущей страницы
    $page = intval($page);
    // Если значение $page меньше единицы или отрицательно
    // переходим на первую страницу
    // А если слишком большое, то переходим на последнюю
    if(empty($page) or $page < 0) $page = 1;
    if($page > $total) $page = $total;
    // Вычисляем начиная с какого номера
    // следует выводить сообщения
    $start = $page * $num - $num;
    // Выбираем $num сообщений начиная с номера $start                                     
    $result_gb1 = mysql_query("SELECT * FROM . ORDER BY id DESC LIMIT $start, $num");
    $myrow_gb1 = mysql_fetch_array($result_gb1);
    $list = 1;
    
    switch($page)
    {
        case "2":
        $list = $num + 1;
        break;
        case "3":
        $list = $num * 2 + 1;
        break;
        case "4":
        $list = $num * 3 + 1;
        break;
        case "5":
        $list = $num * 4 + 1;
        break;
        case "6":
        $list = $num * 5 + 1;
        break;
        case "7":
        $list = $num * 6 + 1;
        break;
        case "8":
        $list = $num * 7 + 1;
        break;
    }

    Навигация по страницам, написанная человеком с гуманитарным складом ума...

    Мартин, 02 Мая 2012

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

    +90

    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
    if(!empty($_POST))
    {
    	include("dbconnect.php");
    
    	$shown_name=$_POST['shown_name'];
    	$username=$_POST['username'];
    	$header=$_POST['header'];
    	$text=$_POST['text'];
    
    	$date_array=getdate(time());
    
    	$date=$date_array['hours'].":".$date_array['minutes'].":".$date_array['seconds']." ".$date_array['weekday']." ".$date_array['mday']." ".$date_array['month']." ".$date_array['year'];
    
    
    	$filename=$date_array['hours']."-".$date_array['minutes']."-".$date_array['seconds']."-".$date_array['mday'].$date_array['month']."-".$date_array['year']."-".$username.".php";
    
    	$path="posts/".$filename;
    
    	$addpost="INSERT INTO posts(author, header, text, date, path) VALUES ('$shown_name', '$header', '$text', '$date', '$path')";
    	$add=$db->prepare($addpost);
    	$add->execute();
    
    
    
    
    	$file=fopen($path, 'w');
    	$content="<?php \$shown_name=\"".$shown_name."\"; \$header=\"".$header."\"; \$text=\"".$text."\";  include(\"template.html\"); ?>";
    
    	$write=fwrite($file, $content);
    
    	fclose($file);
    
    
    	header('Location: index.php');
    	$db=null;
    }

    Добавление поста в блог. Радует каждая строчка.

    nucleartux, 02 Мая 2012

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

    +88

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    if ( ($cache = isset($this->cache[0]) ? $this->cache[0] : null) != null ) {
            $isNeedCache = $cache->isNeedCache($plug);
        }
        
        if ( !$isNeedCache || !$cache->getPlugCache($plug, $plugInfo) ) {
          
          /** processing: running plug */
          $this->dispatcher->processPlug($request, $response);
          
          if ($isNeedCache)
            $cache->setPlugCache($plug, $plugInfo);
        }

    hwtech, 02 Мая 2012

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

    +90

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $obj_type = $blog->getType();
    $obj_id = $blog->getIdentity();
    $obj_task ="add";
    
    if ($obj_type && $obj_id && $obj_task == 'add') {
    ...
    }

    $obj_task - та так... на всякий случай...

    lantian, 01 Мая 2012

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

    +81

    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
    <?php  
    
        $a = explode(" ",'Строка с пробелами');  
       
        $vol = '';
    		 
        for($i=0; $i<count($a); $i++) { 
    	
            $vol .= $a[$i]; 
    			 
        } 
    
    	echo $vol;
    
    ?>

    Шоколадный шедевр убирания пробелов из строки...

    Ни знаний .*_replace, ни, даже, implode, в данном случае...

    killro0000, 01 Мая 2012

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

    +71

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $var1 = "Строка";
    $var2 = true;
    
    var_dump($var1);
    var_dump($var2);
    if($var1 != $var2){
         echo "Не равны";
    }else{
         echo "Равны";
    }

    Недавно заметил странное поведение моего кода и вот что выяснилось.
    Исправил сравнением по типу !==.
    Не думал что такая вот хрень всплывет.

    haker, 01 Мая 2012

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

    +86

    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
    <?
    
    function anti_sql($expressao)    {
    
        $inject=0;
      $expressao = strtolower($expressao);
    
        //arrays com palavras e caracteres invalidos
        $badword1 = array("' or 0=0 --",'" or 0=0 --',"or 0=0 --","' or 0=0 #","admin'--",'" or 0=0 #',"or 0=0 #","' or 'x'='x",'" or "x"="x',"') or ('x'='x","' or 1=1--",'" or 1=1--',"or 1=1--","' or a=a--",'" or "a"="a',"') or ('a'='a",'") or ("a"="a','hi" or "a"="a','hi" or 1=1 --',"hi' or 1=1 --","hi' or 'a'='a","hi') or ('a'='a",'hi") or ("a"="a',"or '1=1'");
        $badword2 = array("select", " select","select "," insert"," update","update "," delete","delete "," drop","drop "," destroy","destroy ");
    
        for($i=0;$i<sizeof($badword1);$i++) {
            if(substr_count($expressao,$badword1[$i])!=0)
              $inject=1;
           }
    
             for($i=0;$i<sizeof($badword2);$i++)    {
                  if(substr_count($expressao,$badword2[$i])!=0)
                  $inject=1;
             }
    
        $charvalidos = "abcdefghijklmnopqrstuvwxyz0123456789БАГВЗЙИКНМУТФХЪЩЬСбагвзйикнмутфхъщьс!?@#$%&(){}[]:;,.-_ ";
    
         for($i=0;$i<strlen($expressao);$i++)    {
            $char = substr($expressao,$i,1);
                if(substr_count($charvalidos,$char)==0)
                   $inject=1;
             }
    
        return($inject);
    }
    
    
    ?>

    Эх, португальские кодеры...

    killro0000, 01 Мая 2012

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

    +75

    1. 1
    2. 2
    <input type="text" value="1" id="Count" size="1">
    <a href="<?=$arResult["ADD_URL"]?>" rel="nofollow" onclick="return addToCart(this, 'catalog_detail_image', 'detail', '<?=GetMessage("CATALOG_IN_BASKET")?>');" id="catalog_add2cart_link"><span><img src="/upload/cart.jpg"></span>

    o1eg, 29 Апреля 2012

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

    +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
    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
    <?php
    class GetF {
        var $symbol;
        public function __construct(){
            $this->symbol = 'Ф';
        }
    }
    
    function GetE(){
        return 'е';
    }
    
    function GetL(){
        $L = array('л'=>'Abracadabra');
        return str_replace(array_values($L), array_keys($L), 'Abracadabra');
    }
    
    function GetI($password){
        return $password == 'Please give me I' ? 'и' : 'WTF?';
    }
    
    class GetX extends GetF{
        var $symbol;
        public function __construct(){
            $this->symbol = 'кс';
        }
    }
    $preF = new GetF();
    $F = $preF->symbol;
    $E = GetE();
    $L = GetL();
    $I = GetI('Please give me I');
    $preX = new GetX();
    $X = $preX->symbol;
    
    echo $F.$E.$L.$I.$X;  //БУ парапам пам пам РА парапам пам пам ТИ парапам пам НО парапам пам пам

    My name is....

    Mrxan, 29 Апреля 2012

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