[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: условие для браузера IE любой версии
sunder
Здравствуйте.

У меня сайт на CMS DLE.

в файле index.php нужно прописать условие для браузера, мол если используется IE, то грузить другой шаблон сайта. Знаю что там не сложно и для опытного программиста 5 секунд, но я ничего не понимаю в PHP

сюда прикладываю исходник index.php


<?php

session_start ();
@ob_start ();
@ob_implicit_flush ( 0 );

@error_reporting ( E_ALL ^ E_WARNING ^ E_NOTICE );
@ini_set ( 'display_errors', true );
@ini_set ( 'html_errors', false );
@ini_set ( 'error_reporting', E_ALL ^ E_WARNING ^ E_NOTICE );

define ( 'DATALIFEENGINE', true );

$member_id = FALSE;
$is_logged = FALSE;

define ( 'ROOT_DIR', dirname ( __FILE__ ) );
define ( 'ENGINE_DIR', ROOT_DIR . '/engine' );

require_once ROOT_DIR . '/engine/init.php';

if (clean_url ( $_SERVER['HTTP_HOST'] ) != clean_url ( $config['http_home_url'] )) {

$replace_url = array ();
$replace_url[0] = clean_url ( $config['http_home_url'] );
$replace_url[1] = clean_url ( $_SERVER['HTTP_HOST'] );

} else
$replace_url = false;

$tpl->load_template ( 'main.tpl' );

$tpl->set ( '{calendar}', $tpl->result['calendar'] );
$tpl->set ( '{archives}', $tpl->result['archive'] );
$tpl->set ( '{tags}', $tpl->result['tags_cloud'] );
$tpl->set ( '{vote}', $tpl->result['vote'] );
$tpl->set ( '{topnews}', $tpl->result['topnews'] );
$tpl->set ( '{login}', $tpl->result['login_panel'] );
$tpl->set ( '{info}', $tpl->result['info'] );
$tpl->set ( '{speedbar}', $tpl->result['speedbar'] );

if ($config['allow_skin_change'] == "yes") $tpl->set ( '{changeskin}', ChangeSkin ( ROOT_DIR . '/templates', $config['skin'] ) );

if (count ( $banners ) and $config['allow_banner']) {

foreach ( $banners as $name => $value ) {
$tpl->copy_template = str_replace ( "{banner_" . $name . "}", $value, $tpl->copy_template );
}

}


$tpl->set_block ( "'{banner_(.*?)}'si", "" );

if (count ( $informers ) and $config['rss_informer']) {
foreach ( $informers as $name => $value ) {
$tpl->copy_template = str_replace ( "{inform_" . $name . "}", $value, $tpl->copy_template );
}
}


if ($allow_active_news AND $config['allow_change_sort'] AND $do != "userinfo") {

$tpl->set ( '[sort]', "" );
$tpl->set ( '{sort}', news_sort ( $do ) );
$tpl->set ( '[/sort]', "" );

} else {

$tpl->set_block ( "'\\[sort\\](.*?)\\[/sort\\]'si", "" );

}

if ($dle_module == "showfull" ) {

if (is_array($cat_list) AND count($cat_list) > 1 ) $category_id = implode(",", $cat_list);

}

if (stripos ( $tpl->copy_template, "[category=" ) !== false) {
$tpl->copy_template = preg_replace ( "#\\[category=(.+?)\\](.*?)\\[/category\\]#ies", "check_category('\\1', '\\2', '{$category_id}')", $tpl->copy_template );
}

if (stripos ( $tpl->copy_template, "[not-category=" ) !== false) {
$tpl->copy_template = preg_replace ( "#\\[not-category=(.+?)\\](.*?)\\[/not-category\\]#ies", "check_category('\\1', '\\2', '{$category_id}', false)", $tpl->copy_template );
}


if (stripos ( $tpl->copy_template, "[static=" ) !== false) {
$tpl->copy_template = preg_replace ( "#\\[static=(.+?)\\](.*?)\\[/static\\]#ies", "check_static('\\1', '\\2')", $tpl->copy_template );
}

if (stripos ( $tpl->copy_template, "[not-static=" ) !== false) {
$tpl->copy_template = preg_replace ( "#\\[not-static=(.+?)\\](.*?)\\[/not-static\\]#ies", "check_static('\\1', '\\2', false)", $tpl->copy_template );
}

if (stripos ( $tpl->copy_template, "{custom" ) !== false) {
$tpl->copy_template = preg_replace ( "#\\{custom category=['\"](.+?)['\"] template=['\"](.+?)['\"] aviable=['\"](.+?)['\"] from=['\"](.+?)['\"] limit=['\"](.+?)['\"] cache=['\"](.+?)['\"]\\}#ies", "custom_print('\\1', '\\2', '\\3', '\\4', '\\5', '\\6', '{$dle_module}')", $tpl->copy_template );
}

$config['http_home_url'] = explode ( "index.php", strtolower ( $_SERVER['PHP_SELF'] ) );
$config['http_home_url'] = reset ( $config['http_home_url'] );

if (! $user_group[$member_id['user_group']]['allow_admin']) $config['admin_path'] = "";

$ajax .= <<<HTML
<div id="loading-layer" style="display:none"><div id="loading-layer-text">{$lang['ajax_info']}</div></div>{$pm_alert}
<script language="javascript" type="text/javascript">
<!--
var dle_root = '
{$config['http_home_url']}';
var dle_admin = '
{$config['admin_path']}';
var dle_login_hash = '
{$dle_login_hash}';
var dle_group =
{$member_id['user_group']};
var dle_skin = '
{$config['skin']}';
var dle_wysiwyg = '
{$config['allow_comments_wysiwyg']}';
var quick_wysiwyg = '
{$config['allow_quick_wysiwyg']}';
var dle_act_lang = ["
{$lang['p_yes']}", "{$lang['p_no']}", "{$lang['p_enter']}", "{$lang['p_cancel']}", "{$lang['p_save']}"];
var menu_short = '
{$lang['menu_short']}';
var menu_full = '
{$lang['menu_full']}';
var menu_profile = '
{$lang['menu_profile']}';
var menu_send = '
{$lang['menu_send']}';
var menu_uedit = '
{$lang['menu_uedit']}';
var dle_info = '
{$lang['p_info']}';
var dle_confirm = '
{$lang['p_confirm']}';
var dle_prompt = '
{$lang['p_prompt']}';
var dle_req_field = '
{$lang['comm_req_f']}';
var dle_del_agree = '
{$lang['news_delcom']}';
var dle_complaint = '
{$lang['add_to_complaint']}';
var dle_big_text = '
{$lang['big_text']}';
var dle_orfo_title = '
{$lang['orfo_title']}';
var dle_p_send = '
{$lang['p_send']}';
var dle_p_send_ok = '
{$lang['p_send_ok']}';
var dle_save_ok = '
{$lang['n_save_ok']}';
var dle_del_news = '
{$lang['news_delnews']}';\n
HTML;


if ($user_group[$member_id['user_group']]['allow_all_edit']) {

$ajax .= <<<HTML
var dle_notice = '{$lang['btn_notice']}';
var dle_p_text = '
{$lang['p_text']}';
var dle_del_msg = '
{$lang['p_message']}';
var allow_dle_delete_news = true;
\n
HTML;


} else {

$ajax .= <<<HTML
var allow_dle_delete_news = false;\n
HTML;


}

if ($config['fast_search'] AND $user_group[$member_id['user_group']]['allow_search']) {

$ajax .= <<<HTML
var dle_search_delay = false;
var dle_search_value = '';
$(function(){
FastSearch();
});

HTML;

}

if (strpos ( $tpl->result['content'], "<pre><code>" ) !== false) {

$js_array[] = "engine/classes/highlight/highlight.code.js";

$ajax .= <<<HTML

$(function(){
$('pre code').each(function(i, e) {hljs.highlightBlock(e, null)});
});

HTML;

}

$ajax .= <<<HTML
//-->
</script>

HTML;

if ($allow_comments_ajax AND ($config['allow_comments_wysiwyg'] == "yes" OR $config['allow_quick_wysiwyg'])) $js_array[] ="engine/editor/jscripts/tiny_mce/jquery.tinymce.js";

if (strpos ( $tpl->result['content'], "hs.expand" ) !== false or strpos ( $tpl->copy_template, "hs.expand" ) !== false) {

if ($config['thumb_dimming']) $dimming = "hs.dimmingOpacity = 0.60;"; else $dimming = "";

if ($config['thumb_gallery'] AND ($dle_module == "showfull" OR $dle_module == "static") ) {

$gallery = "
hs.align = 'center';
hs.transitions = ['expand', 'crossfade'];
hs.addSlideshow({
interval: 4000,
repeat: false,
useControls: true,
fixedControls: 'fit',
overlayOptions: {
opacity: .75,
position: 'bottom center',
hideOnMouseOut: true
}
});"
;

} else {

$gallery = "";

}

$js_array[] = "engine/classes/highslide/highslide.js";

switch ( $config['outlinetype'] ) {

case 1 :
$type = "hs.wrapperClassName = 'wide-border';";
break;

case 2 :
$type = "hs.wrapperClassName = 'borderless';";
break;

case 3 :
$type = "hs.wrapperClassName = 'less';\nhs.outlineType = null;";
break;

default :
$type = "hs.outlineType = 'rounded-white';";
break;


}

$ajax .= <<<HTML
<script language="javascript" type="text/javascript">
<!--
hs.graphicsDir = '
{$config['http_home_url']}engine/classes/highslide/graphics/';
{$type}
hs.numberOfImagesToPreload = 0;
hs.showCredits = false;

{$dimming}
hs.lang = {
loadingText : '
{$lang['loading']}',
playTitle : '
{$lang['thumb_playtitle']}',
pauseTitle: '
{$lang['thumb_pausetitle']}',
previousTitle : '
{$lang['thumb_previoustitle']}',
nextTitle : '
{$lang['thumb_nexttitle']}',
moveTitle : '
{$lang['thumb_movetitle']}',
closeTitle : '
{$lang['thumb_closetitle']}',
fullExpandTitle : '
{$lang['thumb_expandtitle']}',
restoreTitle : '
{$lang['thumb_restore']}',
focusTitle : '
{$lang['thumb_focustitle']}',
loadingTitle : '
{$lang['thumb_cancel']}'
};

{$gallery}
//-->
</script>

HTML;

}

$tpl->set ( '{AJAX}', $ajax );
$tpl->set ( '{headers}', $metatags."\n".build_js($js_array, $config) );

$tpl->set ( '{content}', "<div id='dle-content'>" . $tpl->result['content'] . "</div>" );

$tpl->compile ( 'main' );
$tpl->result['main'] = str_ireplace( '{THEME}', $config['http_home_url'] . 'templates/' . $config['skin'], $tpl->result['main'] );
if ($replace_url) $tpl->result['main'] = str_replace ( $replace_url[0]."/", $replace_url[1]."/", $tpl->result['main'] );
$tpl->result['main'] = str_replace ( '<img src="http://'.$_SERVER['HTTP_HOST'].'/', '<img src="/', $tpl->result['main'] );

echo $tpl->result['main'];
$tpl->global_clear ();
$db->close ();

echo "\n<!-- DataLife Engine Copyright SoftNews Media Group (http://dle-news.ru) -->\r\n";

GzipOut();
?>


в этой строчке необходимо добавить условие

var dle_skin = '{$config['skin']}';


чтобы если браузер клиента IE , то грузить шаблон не из конфига а например " шаблон для IE "

Простите если не в ту тему пишу, буду рад помощи, могу отблагодарить за WMZ например.






Спустя 11 минут, 14 секунд (27.02.2012 - 23:47) inpost написал(а):
Ну так если не понимаешь, то найми программиста и он сделает за копейку.

Спустя 1 минута, 7 секунд (27.02.2012 - 23:48) rooor написал(а):
<!--[if IE]>

или
$_SERVER["HTTP_USER_AGENT"]

Спустя 9 минут, 30 секунд (27.02.2012 - 23:58) johniek_comp написал(а):
if ( stristr($_SERVER['HTTP_USER_AGENT'], 'MSIE 8.0') )
exit('Пшел от сюда негадяй!');

:D

Спустя 14 секунд (27.02.2012 - 23:58) sunder написал(а):
Цитата (rooor @ 27.02.2012 - 20:48)
<!--[if IE]>
или
$_SERVER[«HTTP_USER_AGENT»]

Я в принципе понимаю, как условие должно начинаться.
но как оно будет в конечном итоге смотреться?

так чтоли:
$_SERVER[« IE »]
var dle_skin = 'shablon_IE';

Спустя 6 часов, 50 минут, 48 секунд (28.02.2012 - 06:49) PandoraBox2007 написал(а):
<!--[if IE]> Инструкции для Internet Explorer <![endif]-->
<!--[if IE 5]> Инструкции для IE 5 <![endif]-->
<!--[if IE 5.0]> Инструкции для IE 5.0 <![endif]-->
<!--[if IE 5.5]> Инструкции для IE 5.5 <![endif]-->
<!--[if IE 6]> Инструкции для IE 6 <![endif]-->
<!--[if IE 7]> Инструкции для IE 7 <![endif]-->



Оператор	Описание
lt меньше чем
lte меньше или равно
gt больше чем
gte больше или равно


<!--[if IE]>
var dle_skin = 'shablon_IE';
<![endif]-->


http://en.wikipedia.org/wiki/Conditional_comment

Спустя 6 часов, 36 минут (28.02.2012 - 13:25) sunder написал(а):
печально.. не работает(

Спустя 5 минут, 2 секунды (28.02.2012 - 13:30) alexbel2404 написал(а):

var IE='\v'=='v';

if(IE) {
var dle_skin = 'shablon_IE';
}

вставь после
var dle_skin       = '{$config['skin']}';

Спустя 1 час, 7 минут, 7 секунд (28.02.2012 - 14:37) sunder написал(а):
не работает.. видать там что-то по сложней требуется..(

Спустя 3 минуты, 13 секунд (28.02.2012 - 14:40) Winston написал(а):
var IE = /*@cc_on!@*/false;
if(IE)
alert('IE');
else
alert('Not IE');

Спустя 15 минут, 51 секунда (28.02.2012 - 14:56) sunder написал(а):
вот так встаить?

var IE = /*@cc_on!@*/false;
if(IE)
alert('IE');

var dle_skin = 'shablon_IE';

else
alert('Not IE');

Спустя 7 минут, 30 секунд (28.02.2012 - 15:04) Winston написал(а):
var IE = /*@cc_on!@*/false;
var dle_skin = 'shablon_default'
if(IE)
dle_skin = 'shablon_IE'

Спустя 52 минуты, 16 секунд (28.02.2012 - 15:56) sunder написал(а):
не работает.. похоже нужно весь движок перелопатить чтоб это реализовать..

Спустя 2 часа, 11 минут, 18 секунд (28.02.2012 - 18:07) okapo написал(а):
sunder
зачем движок, шаблон сделай нармальный и все

Спустя 30 минут, 48 секунд (28.02.2012 - 18:38) inpost написал(а):
ДАвай будем честными, ты смотрел вообще какая запись тебе нужна? Ты разложил массив $_SERVER ? Ты вывел $_SERVER['HTTP_USER_AGENT'] и убедился, что там есть ТО, что тебе надо? Покажи код, как ты при помощи функции stripos проверял, является ли данный браузер ИЕ, и как ПРОБОВАЛ разделить.

Спустя 4 часа, 32 минуты, 3 секунды (28.02.2012 - 23:10) sunder написал(а):
Цитата (inpost @ 28.02.2012 - 15:38)
ДАвай будем честными, ты смотрел вообще какая запись тебе нужна? Ты разложил массив $_SERVER ? Ты вывел $_SERVER['HTTP_USER_AGENT'] и убедился, что там есть ТО, что тебе надо? Покажи код, как ты при помощи функции stripos проверял, является ли данный браузер ИЕ, и как ПРОБОВАЛ разделить.

я вообще ничего не понимаю в php...
по-этому попросил помощи на этом форуме..


okapo

у меня не одно-страничный сайт, по-этому мне нужна CMS, с ней удобно.

Спустя 40 минут, 29 секунд (28.02.2012 - 23:51) inpost написал(а):
Ты выше сказал, что НЕ РАБОТАЕТ... омг! Как оно не работает, если ты ничего не понимаешь в PHP, а значит и поставить никуда не мог?

Найми программиста, сделает тебе.

Спустя 8 минут, 43 секунды (28.02.2012 - 23:59) sunder написал(а):
Цитата (inpost @ 28.02.2012 - 20:51)
Ты выше сказал, что НЕ РАБОТАЕТ... омг! Как оно не работает, если ты ничего не понимаешь в PHP, а значит и поставить никуда не мог?

Найми программиста, сделает тебе.

Я приложил код страницы. И мне сказали куда вставлять. так и делал. Не сработало.

заплатил программисту - всё сделал за 5 минут. тема закрыта.
Спасибо!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.