как сделать 404 ошибку
Страницы: 1
как сделать 404 ошибку
как сделать 404 ошибку в router.php компонента.. при удалении страниц она не выводится.. Помогите кто знает.
if (то чего нужно нет) {
echo header ("HTTP/1.0 404 Not Found");
echo 'То чего нужно нет';
exit();
}
Так Вы подробнее напишите, может и сможем помочь.
Заранее спасибо всем кто помогает новичкам ..  подробней стоит компонент недвижимости когда я удаляю какое либо объявление по недвижимости то заместь 404 ошибки выводится страница только без кон тента. вот код роутера.php. Как прописать чтоб при удалении страницы отдавало 404 ошибку я не знаю ...
// no direct access
defined('_JEXEC') or die('Restricted access');

function PropertiesBuildRoute( &$query )
{

$segments = array();
$menu = &JSite::getMenu();

if (empty($query['Itemid'])) {
$menuItem = &$menu->getActive();
} else {
$menuItemid = &$menu->getItem($query['Itemid']);
}

$Mview=$menuItemid->query['view'];
//echo '<br>Mview : '.$Mview.'<br>';
unset( $query['view'] );

if($Mview=='properties')
{

if(isset($query['limitstart']))
{
$segments[] = $query['limitstart'];
unset( $query['limitstart'] );
}
if(isset($query['start']))
{
$segments[] = $query['start'];
unset( $query['start'] );
}

if(isset($query['id']))
{
$segments[] = $query['id'];
unset( $query['id'] );
}

if(isset($query['layout']))
{
$segments[] = $query['layout'];
unset( $query['layout'] );
}


return $segments;
}


if($Mview=='state')
{
unset( $query['sid'] );
}
if($Mview=='locality')
{
unset( $query['lid'] );
}

if($Mview=='location')
{
if(isset($query['cyid']))
{
$segments[] = $query['cyid'];
unset( $query['cyid'] );
}
if(isset($query['sid']))
{
$segments[] = $query['sid'];
unset( $query['sid'] );
}
if(isset($query['lid']))
{
$segments[] = $query['lid'];
unset( $query['lid'] );
}
if(isset($query['task']))
{
$segments[] = $query['task'];
unset( $query['task'] );
}
if(isset($query['id']))
{
$segments[] = $query['id'];
unset( $query['id'] );
}

if(isset($query['start']))
{
$segments[] = $query['start'];
unset( $query['start'] );
}
if(isset($query['limitstart']))
{
$segments[] = $query['limitstart'];
unset( $query['limitstart'] );
}
return $segments;


}

if(isset($query['cid']))
{
$segments[] = $query['cid'];
unset( $query['cid'] );
}

if(isset($query['tid']))
{
$segments[] = $query['tid'];
unset( $query['tid'] );
}

if(isset($query['id']))
{
$segments[] = $query['id'];
unset( $query['id'] );
}
if(isset($query['aid']))
{
$segments[] = $query['aid'];
unset( $query['aid'] );
}
if(isset($query['layout']))
{
$segments[] = $query['layout'];
unset( $query['layout'] );
}

if(isset($query['format']))
{
/* $segments[] = $query['start'];*/
unset( $query['format'] );
}

if(isset($query['start']))
{
$segments[] = $query['start'];
unset( $query['start'] );
}

if(isset($query['limitstart']))
{
$segments[] = $query['limitstart'];
unset( $query['limitstart'] );

}
/*
print_r($segments);
*/

return $segments;
}


function PropertiesParseRoute( $segments)
{
global $mainframe;
$config = new JConfig();
$component = JComponentHelper::getComponent( 'com_properties' );
$params = new JParameter( $component->params );



//$paramsModule = $params;
$categoryInUrl=$params->get('categoryInUrl');
$menu =& JSite::getMenu();
$item =& $menu->getActive();
$vars = array();
$count = count( $segments );
$menuItemid = $item->id;
$Mview=$item->query['view'];


switch($item->query['view'])
{
case 'property':
$vars['view'] = $Mview;


if(($item->query['id']) == 0)
{

$alias = str_replace(':', '-',$segments[0]);



if(isset($segments[1]))
{
switch($segments[1])
{
case 'contact' : case 'pricelist' : case 'map' : case 'print' : case 'recommend' :
$vars['layout'] = $segments[1];
$vars['id'] = str_replace(':', '-',$segments[0]);
break;
default :
$vars['id'] = str_replace(':', '-',$segments[0]);
break;
}
}else{
$vars['id'] = $alias;
}
}else{

}
break;

case 'properties':
$vars['view'] = 'properties';


if(isset($segments[0]))
{
if(is_numeric($segments[0]))
{
$vars['limitstart'] = $segments[0];
}else{


if($segments[0][0] != ":")
{
list($l0,$l1) = explode(":",$segments[0]);
if(is_numeric($l0))
{
$segments[0] = $l1;

}
else {

$app = JFactory::getApplication();
$db = JFactory::getDBO();
$part = str_replace(":", '-', $segments[0]);
$db->setQuery("select id from #__properties_products where alias=".$db->Quote($part) );
$tid = $db->loadResult();
if (!empty($tid)){
$url = str_replace($part, $tid.'-'. $part, $_SERVER['REQUEST_URI']);
$app->redirect($url, '', 'message', true);
}


//
}
//$alias = "-".$l1;
}
$alias = str_replace(':', '-',$segments[0]);

if(isset($segments[1]))
{
switch($segments[1])
{
case 'contact' : case 'pricelist' : case 'map' : case 'print' : case 'recommend' :
$vars['layout'] = $segments[1];
$vars['id'] = str_replace(':', '-',$segments[0]);
break;
default :
$vars['id'] = str_replace(':', '-',$segments[0]);
break;
}
}else{
$vars['id'] = $alias;
}


}
}

break;
case 'favorites':
$vars['view'] = 'favorites';
if(is_numeric($segments[0]))
{
$vars['limitstart'] = $segments[0];
}else{
$vars['id'] = $segments[0];
}
break;
case 'status':
$vars['view'] = 'status';
if(is_numeric($segments[0]))
{
$vars['limitstart'] = $segments[0];
}else{
$vars['id'] = $segments[0];
}
break;
case 'category':
$vars['view'] = 'category';
if(is_numeric($segments[0]))
{
$vars['limitstart'] = $segments[0];
}else{
$vars['id'] = $segments[0];
}

break;
case 'type':
$vars['view'] = 'type';
if(is_numeric($segments[0]))
{
$vars['limitstart'] = $segments[0];
}else{
$vars['id'] = $segments[0];
}
break;
case 'country':
$vars['view'] = 'country';
if(is_numeric($segments[0]))
{
$vars['limitstart'] = $segments[0];
}else{
$vars['id'] = $segments[0];
}
break;
case 'state':
$vars['view'] = 'state';
if(is_numeric($segments[0]))
{
$vars['limitstart'] = $segments[0];
}else{
$vars['id'] = $segments[0];
}
break;
case 'locality':
$vars['view'] = 'locality';
if(is_numeric($segments[0]))
{
$vars['limitstart'] = $segments[0];
}else{
$vars['id'] = $segments[0];
}
break;
case 'region':
$vars['view'] = 'region';
if(is_numeric($segments[0]))
{
$vars['limitstart'] = $segments[0];
}else{
$vars['id'] = $segments[0];
}
break;
case 'selection':
$vars['view'] = 'selection';
if(is_numeric($segments[0]))
{
$vars['limitstart'] = $segments[0];
}else{
$vars['id'] = $segments[0];
}
break;
case 'location':
$vars['view'] = 'location';

if(is_numeric($segments[$count - 1]))
{
$vars['limitstart'] = $segments[$count - 1];
unset( $segments[$count - 1] );
}

switch(count($segments))
{
case 1 :
$vars['cyid'] = $segments[0];
break;
case 2 :
$vars['cyid'] = $segments[0];
$vars['sid'] = $segments[1];
break;
case 3 :
$vars['cyid'] = $segments[0];
$vars['sid'] = $segments[1];
$vars['lid'] = $segments[2];
break;
case 4 :
$vars['cyid'] = $segments[0];
$vars['sid'] = $segments[1];
$vars['lid'] = $segments[2];
$vars['id'] = $segments[3];
break;
}
break;




case 'panel':
$vars['view'] = 'panel';
$vars['id'] = $segments[0];
$vars['layout'] = $segments[1];
break;

case 'agents':
$vars['view'] = 'agents';
if(is_numeric($segments[0]))
{
$vars['limitstart'] = $segments[0];
}else{
$vars['aid'] = $segments[0];
}
break;

case 'agentlistings':
$vars['view'] = 'agentlistings';
$vars['aid'] = $segments[0];
if(isset($segments[1]))
{
$vars['limitstart'] = $segments[1];
}


break;

default:
break;
}



/*
print_r($segments);
print_r($vars);
echo '<br>itemId: '. $menuItemid;
*/

return $vars;
}

function getProductId($alias)
{
$component = JComponentHelper::getComponent( 'com_properties' );
$params = new JParameter( $component->params );
$useTranslations=$params->get('useTranslations','0');

$db = JFactory::getDBO();
if($useTranslations222)
{
$query = 'SELECT p.id FROM #__properties_products as p '.
' LEFT JOIN #__properties_products_translations AS pt ON pt.pt_pid = p.id '.
' WHERE alias = '.$db->Quote($alias)
.' OR pt_alias = '.$db->Quote($alias)
;
}else{
$query = 'SELECT p.* FROM #__properties_products as p '
.' WHERE alias = '.$db->Quote($alias)
;
}
$db->setQuery($query);
$product = $db->loadObject();
//print_r($product);

echo $query;
//require('a');


return $product->id;
}
знаний программирования нет ... Заранее всем спасибо.
Страницы: 1
Похожие темы:
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)
Новые темыОбъявленияСвободное общение
17:03 Устали от Пустых Обещаний? Market-Place.su даёт реальные деньги! 
15:08 Стоит ли добавлять сайт в Rambler топ 100? 
14:14 LOSPOLLOS.COM - Конвертим по рецепту Хайзенберга. Dating, Mainstream, Binary Options 
19:33 Dao.AD: Монетизация и покупка Push/Pops/Inpage и Video трафика! 
09:02 Как продвигать сайт с неуникальным контентом 
08:57 Absence в Армении 
14:50 Индексация страниц 
16:58 PonyBit.ru - обменный пункт PonyBit.ru (Понибит.ру) 
14:35 Cryptonet.pro - быстрый и надежный обмен электронных валют! 
14:30 SwapPix.io - быстрый и безопасный обменник криптовалют. 
13:55 Обменник криптовалюты OnlyCrypto 
13:36 Affiliate Top - партнерская программа нового уровня 
10:29 local-pay.com - быстрый и надежный обменник криптовалюты Local-Pay 
04:11 Просто $0.04/IP 9PROXY.COM Резидентные прокси Неограниченная пропускная способность Уникальная политика замены Без чёрного списка 
20:48 Точные прогнозы на футбол 
19:04 Ну что, кто куда деваете свои сайты? 
22:09 Добро пожаловать в цифровой мир... 
19:42 Топ-5 способов использовать мобильные прокси для бизнеса: подробный обзор 
22:08 Накрутка поисковых подсказок 
14:01 Union Pharm - топовая фарма-партнерка для профессионалов! 
10:59 Ням-ням! - 8 деликатесов, которые когда-то ели только бедные люди