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

    +162

    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
    if (isset($items['1994-2008'])) {
    	$temp = $items['1994-2008'];
    	unset($items['1994-2008']);
    	$items['1994-2009'] = $temp;
    }
    
    ....
    
    $items = $archive+$results;
    arsort($items);
    $items = array_slice($items, 0, 4);
    foreach ($items as $key=>$arr) {
    	$content['items'][]=$arr;
    }

    $archive и $results - два массива :-)

    aleksey, 26 Ноября 2010

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

    +155

    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
    /*фрагмент из компонента*/
    $arProps = array(
    "NAMES"=>$props["NAMES"]["VALUE"],
    "DESCRIPTIONS"=>$props["DESCRIPTIONS"]["VALUE"],
    "LINKS"=>$props["LINKS"]["VALUE"],
    "IMAGES"=>$props["PICTURES"]["VALUE"],
    "URLS" => array(
    "0"=>CFile::GetPath($props["PICTURES"]["VALUE"][0]),
    "1"=>CFile::GetPath($props["PICTURES"]["VALUE"][1]),
    "2"=>CFile::GetPath($props["PICTURES"]["VALUE"][2]),
    "3"=>CFile::GetPath($props["PICTURES"]["VALUE"][3]),
    "4"=>CFile::GetPath($props["PICTURES"]["VALUE"][4]),
    ),
    );
    
    /*код из шаблона*/
    <div class="text-blocks">
    <?if($arResult["PROPS"]["DESCRIPTIONS"][0]["TEXT"]):?>
      <div id="banner_text_1" class="text curr" style="left:92px; opacity:0.8; display: block">
    <table border="0" cellpadding="0" cellspacing="0"><tr><td>
        <a href="<?=$arResult["PROPS"]["LINKS"][0]?>"><?=$arResult["PROPS"]["DESCRIPTIONS"][0]["TEXT"]?></a>
    </td></tr></table>
      </div>
    <?endif;?>
    <?if($arResult["PROPS"]["DESCRIPTIONS"][1]["TEXT"]):?>
      <div id="banner_text_2" class="text" style="left:156px; opacity:0; display: none">
    <table border="0" cellpadding="0" cellspacing="0"><tr><td>
        <a href="<?=$arResult["PROPS"]["LINKS"][1]?>"><?=$arResult["PROPS"]["DESCRIPTIONS"][1]["TEXT"]?></a>
    </td></tr></table>
      </div>
    <?endif;?>
    <?if($arResult["PROPS"]["DESCRIPTIONS"][2]["TEXT"]):?>
      <div id="banner_text_3" class="text" style="left:220px; opacity:0; display: none">
    <table border="0" cellpadding="0" cellspacing="0"><tr><td>
        <a href="<?=$arResult["PROPS"]["LINKS"][2]?>"><?=$arResult["PROPS"]["DESCRIPTIONS"][2]["TEXT"]?></a>
    </td></tr></table>
      </div>
    <?endif;?>
    <?if($arResult["PROPS"]["DESCRIPTIONS"][3]["TEXT"]):?>
      <div id="banner_text_4" class="text" style="left:284px; opacity:0; display: none">
    <table border="0" cellpadding="0" cellspacing="0"><tr><td>
        <a href="<?=$arResult["PROPS"]["LINKS"][3]?>"><?=$arResult["PROPS"]["DESCRIPTIONS"][3]["TEXT"]?></a>
    </td></tr></table>
      </div>
    <?endif;?>
    <?if($arResult["PROPS"]["DESCRIPTIONS"][4]["TEXT"]):?>
      <div id="banner_text_4" class="text" style="left:284px; opacity:0; display: none">
    <table border="0" cellpadding="0" cellspacing="0"><tr><td>
        <a href="<?=$arResult["PROPS"]["LINKS"][4]?>"><?=$arResult["PROPS"]["DESCRIPTIONS"][3]["TEXT"]?></a>
    </td></tr></table>
      </div>
    <?endif;?>
    </div>

    Выборка свойств картинок и последующий вывод в шаблоне (выдернуто из самописного компонента Битрикс). Писал это очень давно, вот возникла необходимость править, открыл - посмотрел - случилась истерика!!! Очевидно что такое циклы я тогда еще не подозревал))

    akovalenko, 26 Ноября 2010

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

    +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
    <?
    	$optSelect['10'] = ($_REQUEST['sort_count']=='10') ? 'selected' : '';
    	$optSelect['20'] = ($_REQUEST['sort_count']=='20') ? 'selected' : '';
    	$optSelect['50'] = ($_REQUEST['sort_count']=='50') ? 'selected' : '';
    	$optSelect['all'] = ($_REQUEST['sort_count']=='all') ? 'selected' : '';
    	
    	$remParams = array('sort_count');
            //функция GetCurPageParam в битрикс возвращает путь к текущей странице с добавлением/удалением параметров (автор поста) 
    	$optValueURI['10'] = $APPLICATION->GetCurPageParam('sort_count=10', $remParams);
    	$optValueURI['20'] = $APPLICATION->GetCurPageParam('sort_count=20', $remParams);
    	$optValueURI['50'] = $APPLICATION->GetCurPageParam('sort_count=50', $remParams);
    	$optValueURI['all'] = $APPLICATION->GetCurPageParam('sort_count=all', $remParams);
    			
    	$optValue['10'] = $siteURL . $optValueURI['10'];
    	$optValue['20'] = $siteURL . $optValueURI['20'];
    	$optValue['50'] = $siteURL . $optValueURI['50'];
    	$optValue['all'] = $siteURL . $optValueURI['all'];
    ?>
    <select onChange="location=this.value">
    	<option <?=$optSelect['10']?> value="<?=$optValue['10']?>">10</option>
    	<option <?=$optSelect['20']?> value="<?=$optValue['20']?>">20</option>
    	<option <?=$optSelect['50']?> value="<?=$optValue['50']?>">50</option>
    	<option <?=$optSelect['all']?> value="<?=$optValue['all']?>">Все</option>
    </select>

    Реализация Селекта количества выводимых элементов на странице. Сайт делал топовый партнёр 1c-Bitrix.
    Я думаю, что разумнее было бы сделать так:
    $arPages = array(10, 20, 50, 'all');
    foreach ($arPages as $page) {?>
    <option <?if($page == $_REQUEST['sort_count']){?>selected<?}?>>$page</option>
    <?}?>
    Ну и для сабмита можно какую нибудь нормальную функцию в JS написать.

    Cool-Di, 26 Ноября 2010

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

    +171

    1. 1
    echo eval($myrow_res['text']);

    Выкакыш.

    Uchkuma, 26 Ноября 2010

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

    +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
    function get_existing_boxes () {
    		global $wp_meta_boxes, $more_fields;
    		$data = $wp_meta_boxes;
    		$boxes = array();
    		foreach ((array) $data as $data1) {
    			foreach ((array) $data1 as $data2) {
    				foreach ((array) $data2 as $data3) {
    					foreach ((array) $data3 as $box) {
    						 if ($title = $box['title']) {
    							 $boxes[$box['id']] = $box;
    						 }
    					}
    				}
    			}						
    		}
    		//if (is_object($more_fields)) {
    	//		$mfs = $more_fields->get_objects(array('_plugin_saved', '_plugin'));
    	//		foreach ($mfs as $mf_key => $mf) $boxes[$mf_key] = $mf;
    	//	}
    		//__d($wp_meta_boxes);
    
    		return $boxes;
    	}

    Из плагина "more-post-types" для WP

    Anderson, 25 Ноября 2010

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

    +145

    1. 1
    2. 2
    3. 3
    function CalculateShippingCost() {
      return 20.00;
    }

    Из одного "реального" интернет-магазина!

    dwinner, 25 Ноября 2010

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    // php5.1 to php4 functional, thanks for nic.ru fucked hosting
    function html_decode($str){
    	if(function_exists("htmlspecialchars_decode")){
    		return stripslashes(htmlspecialchars_decode($str, ENT_QUOTES));
    	}else{
    		return stripslashes(str_replace(array("&amp;", "&quot;", "&#039;", "&lt;", "&gt;"), array("&", "\"", "'", "<", ">"), $str));
    	}
    }

    Sunny, 25 Ноября 2010

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

    +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
    Сколько говна уже придумано было...:
    
    $lasthour = date("Y-m-d H:i:s", mktime(date("H")-1, date("i"), date("s"), date("m"), date("d"), date("Y")));
    $query = "
    	UPDATE user_sid
    	SET online = 0
    	WHERE date_action < '{$lasthour}'
    ";
    $sql->query($query);
    
    Вместо простого и понятного:
    $query = "
    	UPDATE user_sid
    	SET online = 0
    	WHERE date_action < DATE_FORMAT( NOW( ) - INTERVAL 1 HOUR , '%Y-%m-%d %H:%i:%s' )
    ";
    $sql->query($query);

    Печаль... :'(

    1_and_0, 25 Ноября 2010

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

    +171

    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
    if(isset($_GET['menu']))
     {
      if(isset($_GET['id']))
      {
       if (!preg_match("|^[\d]+$|", $_GET['id'])) {header("Location: 405.php");}
       $id = $_GET['id'];
       if($id = 1){include("blocks/info.php"); exit();}
       elseif($id = 2){include("blocks/resyrs.php"); exit();}
       elseif($id = 3){include("blocks/nayka.php"); exit();}
       elseif($id = 4){include("blocks/teachers.php"); exit();}
       elseif($id = 5){include("blocks/ycheba.php"); exit();}
       elseif($id = 6){include("blocks/deti.php"); exit();}
       elseif($id = 7){include("blocks/pobedy.php"); exit();}
       elseif($id = 8){include("blocks/online.php"); exit();}
       elseif($id = 9){include("blocks/gostevay.php"); exit();}
       elseif($id = 10){include("blocks/blog.php"); exit();}
       elseif($id = "") {header("Location: 404.php");}
       else {header("Location: 404.php");}
     }
     else {header("Location: 404.php");}
    }

    Так... на закуску.

    Uchkuma, 25 Ноября 2010

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

    +145

    1. 1
    2. 2
    <!--<form method=post action=bablo.php><input type=hidden name=action value='switchstyle'><td width=70 style='border-bottom-width:0px;'><input type=submit value=' режим: ночь ' style='border-width:0px;'></td><input type=hidden name=cur_style value='night'></form>--><td>account: mary-e</td></tr>
    	<!--<tr><td class=workcell colspan=9></td></tr>-->

    Kolotibablo угарает в который раз.
    Нахера нам невидимая кнопка?

    vedmak3013, 24 Ноября 2010

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