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

    +161

    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
    // START MY FOR MENU
    $list_pages = preg_replace('/<li([^>]*)>/is', ' ', $output);
    $list_pages = str_replace('</li>', '', $list_pages);
    $list_pages = preg_replace('/<a/is', '</td><td class="menu"> <a$1', $list_pages);
    
    if (isset($_GET['page_id']) AND !is_numeric($_GET['page_id'])) { exit("ERROR!"); }
    $pd = mysql_real_escape_string($_GET['page_id']);
    if(strstr($_SERVER['REQUEST_URI'], 'page_id='.$pd) == TRUE) {
    $list_pages = preg_replace('/<\/td><td class=\"menu\"\> <a href=\"(http:\/\/'.$_SERVER["HTTP_HOST"].'\/\?page_id='.$pd.')/is', '</td><td class="menu_click"><a href="$1', $list_pages);
    }
    
    for($i=0; $i<sizeof($pages); $i++) {
    $link = $pages[$i]->guid;
    $lol = '';
    if(strstr($_SERVER['REQUEST_URI'], '?') == TRUE) {
    if ($link == 'http://'.$_SERVER['HTTP_HOST'].'/?'.$_SERVER['QUERY_STRING']) {
    $list_pages = preg_replace('/<\/td><td class=\"menu\"\> <a href=\"(http:\/\/'.$_SERVER["HTTP_HOST"].'\/\?'.$_SERVER["QUERY_STRING"].')/is', '</td><td class="menu_click2"><a href="$1', $list_pages);
    }
     } else {
    if ($link == 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']) {
    $list_pages = preg_replace('/<\/td><td class=\"menu\"\> <a href=\"(http:\/\/'.$_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"].')/is', '</td><td class="menu_click2"><a href="$1', $list_pages);   
    }
       }
    }
    
    
         $output = $list_pages;
         $str = preg_split("/<\/a\>/i", $output);
         $moar = '';
       for ($i=0; $i<sizeof($pages); $i++)
       {
         $moar .= preg_replace('/<\/td><td class=\"menu\"\> <a href=\"(.*)\" title=\"(.*)\">/is', 
         '</td><td class="menu" onclick="linkgo(\'$1\');" id="moar'.$i.'" onmouseover="menu1(\'moar'.$i.'\');" onmouseout="menu2(\'moar'.$i.'\');"> <a href="$1" title="$2">', $str[$i]);
         $moar .= "</a>";
         }
        $output = $moar;
        
    // END MY FOR MENU

    None ;)

    Furry, 18 Января 2011

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

    +160

    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
    // START MY FOR MENU
    $list_pages = preg_replace('/<li([^>]*)>/is', ' ', $output);
    $list_pages = str_replace('</li>', '', $list_pages);
    $list_pages = preg_replace('/<a/is', '</td><td class="menu"> <a$1', $list_pages);
    
    if (isset($_GET['page_id']) AND !is_numeric($_GET['page_id'])) { exit("ERROR!"); }
    $pd = mysql_real_escape_string($_GET['page_id']);
    if(strstr($_SERVER['REQUEST_URI'], 'page_id='.$pd) == TRUE) {
    $list_pages = preg_replace('/<\/td><td class=\"menu\"\> <a href=\"(http:\/\/'.$_SERVER["HTTP_HOST"].'\/\?page_id='.$pd.')/is', '</td><td class="menu_click"><a href="$1', $list_pages);
    }
    
    //for($i=0; $i<sizeof($pages); $i++) {
    //$link = $pages[$i]->guid;
    //$lol = '';
    //if(strstr($_SERVER['REQUEST_URI'], '?') == TRUE) {
    //if ($link == 'http://'.$_SERVER['HTTP_HOST'].'/?'.$_SERVER['QUERY_STRING']) {
    //$list_pages = preg_replace('/<\/td><td class=\"menu\"\> <a href=\"(http:\/\/'.$_SERVER["HTTP_HOST"].'\/\?'.$_SERVER["QUERY_STRING"].')/is', '</td><td class="menu_click2"><a href="$1', $list_pages);
    //}
    // } else {
    //if ($link == 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']) {
    //$list_pages = preg_replace('/<\/td><td class=\"menu\"\> <a href=\"(http:\/\/'.$_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"].')/is', '</td><td class="menu_click2"><a href="$1', $list_pages);   
    //}
    //   }
    //}
    
    
         $output = $list_pages;
         $str = preg_split("/<\/a\>/i", $output);
         $moar = '';
       for ($i=0; $i<sizeof($pages); $i++)
       {
         $moar .= preg_replace('/<\/td><td class=\"menu\"\> <a href=\"(.*)\" title=\"(.*)\">/is', 
         '</td><td class="menu" onclick="linkgo(\'$1\');" id="moar'.$i.'" onmouseover="menu1(\'moar'.$i.'\');" onmouseout="menu2(\'moar'.$i.'\');"> <a href="$1" title="$2">', $str[$i]);
         $moar .= "</a>";
         }
        $output = $moar;
        
    // END MY FOR MENU

    None.

    Furry, 18 Января 2011

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

    +165

    1. 1
    $ext = substr($fileName, strrpos($fileName, '.') + 1);

    Про pathinfo никто и не слышал видимо. Код написан недавно кем-то из команды)

    anycolor, 18 Января 2011

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

    +184

    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
    $multiplier = 1.15;
    $allowedLen = 56;
    echo 
    	(
    		(
    			(
    				$allowedLen - 
    				(
    					strlen($resSingle->name) * $multiplier
    				)
    			) > 0
    		) ?
    		(
    			(
    				isset
    				(
    					$resSingle->address
    					[
    						$allowedLen - 
    						(
    							strlen($resSingle->name) * $multiplier
    						)
    					]
    				) ?
    				(
    					' - ' . substr
    					(
    						$resSingle->address , 0 , $allowedLen - 
    						(
    							strlen($resSingle->name) * $multiplier
    						)
    					) .
    					'...'
    				) :
    				(
    					' - ' . $resSingle->address
    				)
    			)
    		) :
    		(
    			''
    		)
    	);

    Here's my string formatting echo. Name is upper case and address is lowercase. I needed to echo this information, and the rows should be with ~equal length. Enjoy!

    wyand, 17 Января 2011

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

    +148

    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
    $take_mod = mysql_query("select * from `cpdb`.`".$mod."`;");
    			
    $rows = mysql_num_rows($take_mod);
    $fields = mysql_num_fields($take_mod);
    
    		### Вывод БД<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    	
    			echo '<td width="100%" height="26" valign="center">';			
    			### Создание названия полей____________
    		
    				echo "<table border=3px>";
    				echo "<tr>";
    				for ($b=0; $b<$fields; $b++)
    				{
    					echo "<td bgcolor='#CCFFFF'>".mysql_field_name ($take_mod, $b)."</td>";
    				}
    				echo "</tr>";
    		
    			### Содержание БД____________
    				for ($c=0; $c<$rows; $c++) {
    				 	echo "<tr>";
    					echo "<td>".mysql_result($take_mod, $c, 0)."</td>";				
    					for ($cc=1; $cc<$fields; $cc++) {
    						if($mod == 'img'){
    							echo "<td><img src='../images/100/".mysql_result($take_mod, $c, $cc)."'  width='200'/></td>";
    						}
    						else{
    							echo "<td>".mysql_result($take_mod, $c, $cc)."</td>";
    						}
    				    }
    				
    					$edit_id = $c;
    					$drop_id = mysql_result($take_mod, $c, 0);
    				
    					echo '<td width="25" bgcolor="#CCFFFF" align="center" valign="middle" >
    					<a href="?key=2&mod='.$mod.'&edit_id= '.$edit_id.'"><img src="img/b_edit.png" alt="Изменить" /></a></td>';
    					echo '<td width="25" bgcolor="#CCFFFF" align="center" valign="middle" >
    					<a href="?key=2&mod='.$mod.'&id_del='.$drop_id.'"><img src="img/b_drop.png" alt="Удалить" /></a></td>';
    
    				  	echo "</tr>";
    					}
    				echo "</table>";
    			echo '</td>';

    Это CMS - мегавывод записей БД для выбора: редактирование или удаление записи.
    Я пока только догадываюсь, что это мой мега высер..))) И пока еще не опечален)..

    Hello_O, 17 Января 2011

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

    +166

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    <?php
    # bla bla bla...
    $friends->add(new Friend('Den'));
    $user->add($friends);
    $friends->add($user);
    $friends->getRecursiveDescription(); # сбой!
    # bla bla bla...
    ?>

    Крах композита "вешает" веб-сервер!

    dwinner, 17 Января 2011

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

    +159

    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
    <?php
    session_start();
    require_once 'connection/ConnectionConfig.php';
    require_once 'classes/DBClass.php';
    $DB = new DB($host, $user, $password);
    
    function LoadContent($DB) {
        if (isset($_GET["ShowTable"]) || isset($_GET["ViewPage"]) || isset($_POST["Cancel"])) {
            $DB->SelectBase($_SESSION["CurrentDB"]);
            include 'loaders/view_table.te.php';
        }
        if (isset($_GET["NewRecord"]) || isset($_GET["EditRecord"])) {
            if (isset($_GET["EditRecord"]) && (!isset($_GET["SelectedRecord"]))) {
                $message = "Не выбрана запись для редактирования!";
                include 'templates/message.te.html';
            }
            else
                include 'loaders/edit_record.te.php';
        }
        if (isset($_POST["Save"])) {
            include 'loaders/edit_function.te.php';
        }
        if (isset($_GET["DeleteRecord"])) {
            if (!isset($_GET["SelectedRecord"])) {
                $message = "Не выбрана запись для удаления!";
                include 'templates/message.te.html';
            } else {
                include 'loaders/del_function.te.php';
            }
        }
    }
    
    function LoadMenu($DB) {
        include 'loaders/menu_bases.te.php';
        if (isset($_GET["SelectDatabase"])) {
            $DB->SelectBase($_GET["SelectedDatabase"]);
            $_SESSION["CurrentDB"] = $DB->GetCurrentBase();
        }
        if (isset($_SESSION["CurrentDB"]))
            include 'loaders/menu_tables.te.php';
    }
    
    include 'templates/common.te.html';
    ?>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
        <head>
            <title></title>
            <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
            <link rel="stylesheet" type="text/css" href="style/style.css">
        </head>
        <body>
            <table border="1" class="common">
                <tr>
                    <td width="250" height="130">
                        <img src="image/logo1.jpg" alt="logo"/>
    
                    </td>
                    <td rowspan="2" valign="top">
                        <?php LoadContent($DB); ?>
                    </td>
                </tr>
                <tr>
                    <td valign="top" class="menu_container">
                        <?php LoadMenu($DB); ?>
                    </td>
                </tr>
                <tr>
                    <td colspan="2">
                        <p class="copyright">Разработано: 2011г. Автор: Тяготенков В.Э.</p>
                    </td>
                </tr>
            </table>
        </body>
    </html>

    qbasic, 17 Января 2011

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

    +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
    <?php
    ...
    if($_POST['action'] == 'parse') {
    	$login = $_POST['login'];
    	$pass = $_POST['pass'];
    	$file = $_POST['file'];
    	$page = $_POST['page'];
    	$sleep = intval($_POST['sleep']);
    	
    	//$key = iconv('cp1251','utf-8',$_POST['key']);
    
    	if ( empty($login) or empty($pass) or empty($file) or empty($page) ) die('Не заданы параметры.');
    	
    	if ( !login($login,$pass) ) die('Неверный логин или пароль.');
    ...
    if ( preg_match('#Изменить персональные данные|Создание страницы#Ui',$code) ) {
        return true;
    } else {
        return false;
    }
    ...
    ?>

    Прислали в ICQ, попросили доработать... Отказал

    Devzirom, 17 Января 2011

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

    +145

    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
    /**
     * commentsPostController: контроллер для метода post модуля comments
     *
     * @package modules
     * @subpackage comments
     * @version 0.2
     */
    class commentsPostController extends simpleController
    {
    //......
            $formTitles = array(
                'Я, <b>' . htmlspecialchars($user->getLogin()) . '</b>, находясь в здравом уме и твердой памяти, торжественно заявляю:',
                'Помни, <b>' . htmlspecialchars($user->getLogin()) . '</b>, за тобой могут следить!',
                'Семь раз отмерь — один отрежь, <b>' . htmlspecialchars($user->getLogin()) . '</b>!',
                'Где здесь C++, <b>' . htmlspecialchars($user->getLogin()) . '</b>?!',
            );
    
            $session = $this->toolkit->getSession();
            if ($onlyForm) {
                $currentTitleIndex = mt_rand(0, sizeof($formTitles) - 1);
                $session->set('comments_form_title_index', $currentTitleIndex);
            } else {
                $currentTitleIndex = $session->get('comments_form_title_index', -1);
                if (!isset($formTitles[$currentTitleIndex])) {
                    $currentTitleIndex = mt_rand(0, sizeof($formTitles) - 1);
                    $session->set('comments_form_title_index', $currentTitleIndex);
                }
            }
    //......
    }

    11-16: титлам самое место в контроллере!

    18-28 меня совсем обескуражило... Но чем, подсказывать не буду, глядите сами = )

    откуда взято, сами понимаете = )

    Lure Of Chaos, 16 Января 2011

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

    +159

    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
    /* Draw the legend of the active series */
       function drawLegend($X,$Y,$Format="")
        {
         $Family	= isset($Format["Family"]) ? $Format["Family"] : LEGEND_FAMILY_BOX;
    ...
         $Mode	= isset($Format["Mode"]) ? $Format["Mode"] : LEGEND_VERTICAL;
         if ( $Surrounding != NULL ) { $BorderR = $R + $Surrounding; $BorderG = $G + $Surrounding; $BorderB = $B + $Surrounding; }
         $YStep = max($this->FontSize,$BoxHeight) + 5;
         $XStep = $BoxWidth + 5;
         $XStep = $XSpacing;
         $Data = $this->DataSet->getData();
         $Boundaries = ""; $Boundaries["L"] = $X; $Boundaries["T"] = $Y; $Boundaries["R"] = 0; $Boundaries["B"] = 0; $vY = $Y; $vX = $X;
         foreach($Data["Series"] as $SerieName => $Serie)
          {
           if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
            {
             if ( $Mode == LEGEND_VERTICAL )
              {
               $BoxArray = $this->getTextBox($vX+$BoxWidth+4,$vY+$BoxHeight/2,$FontName,$FontSize,0,$Serie["Description"]);
               if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$BoxHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$BoxHeight/2; }
               if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
               if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$BoxHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$BoxHeight/2; }
               $Lines = preg_split("/\n/",$Serie["Description"]);
               $vY = $vY + max($this->FontSize*count($Lines),$BoxHeight) + 5;
              }
             elseif ( $Mode == LEGEND_HORIZONTAL )
              {
               $Lines = preg_split("/\n/",$Serie["Description"]);
               $Width = "";
               foreach($Lines as $Key => $Value)
                {
                 $BoxArray = $this->getTextBox($vX+$BoxWidth+6,$Y+$BoxHeight/2+(($YStep-3)*$Key),$FontName,$FontSize,0,$Value);
                 if ( $Boundaries["T"] > $BoxArray[2]["Y"]+$BoxHeight/2 ) { $Boundaries["T"] = $BoxArray[2]["Y"]+$BoxHeight/2; }
                 if ( $Boundaries["R"] < $BoxArray[1]["X"]+2 ) { $Boundaries["R"] = $BoxArray[1]["X"]+2; }
                 if ( $Boundaries["B"] < $BoxArray[1]["Y"]+2+$BoxHeight/2 ) { $Boundaries["B"] = $BoxArray[1]["Y"]+2+$BoxHeight/2; }
                 $Width[] = $BoxArray[1]["X"];
                }
               $vX=max($Width)+$XStep;
              }
            }
          }
         $vY=$vY-$YStep; $vX=$vX-$XStep;
         $TopOffset  = $Y - $Boundaries["T"];
         if ( $Boundaries["B"]-($vY+$BoxHeight) < $TopOffset ) { $Boundaries["B"] = $vY+$BoxHeight+$TopOffset; }
         if ( $Style == LEGEND_ROUND )      $this->drawRoundedFilledRectangle(...);
         elseif ( $Style == LEGEND_BOX )  $this->drawFilledRectangle(...);
         $RestoreShadow = $this->Shadow; $this->Shadow = FALSE;
         foreach($Data["Series"] as $SerieName => $Serie)
          {
           if ( $Serie["isDrawable"] == TRUE && $SerieName != $Data["Abscissa"] )
            {
             $R = $Serie["Color"]["R"]; $G = $Serie["Color"]["G"]; $B = $Serie["Color"]["B"];
             $Ticks = $Serie["Ticks"]; $Weight = $Serie["Weight"];
             if ( $Family == LEGEND_FAMILY_BOX )
    
          }
         $this->Shadow = $RestoreShadow;
        }

    Наша либа, которая рисует графики: функция рисующая легенду.

    jdmien, 16 Января 2011

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