Язык
Контакты
GitHub
Поддержка
Регистрация
Войти
Логин: Пароль: Запомнить:
Пользователи
Последние сообщения
Тема закрыта
1 2 3 4 ... >>

ПДА версия Fapos

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#11
Сашка_из_Шебекино, ты ковычки забыл.

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
<?php if($params[0] == 'pages' && $params[1] == 'index'){

 echo 
'1';

 }else{

 echo 
'2';

 }
?>

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

Сашка_из_Шебекино

  • Заклинатель Атома
  • Пользователь
  • 1803
  • Репутация:87 
  • Предупреждения: 0 
  • Регистрация:
    27 Мар 2011
#12
Drunya, всёравно и на главной и на странице ввода логина выбивает "2" %)

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#13
Очень странно. А где именно вы вставляете этот код?

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

Сашка_из_Шебекино

  • Заклинатель Атома
  • Пользователь
  • 1803
  • Репутация:87 
  • Предупреждения: 0 
  • Регистрация:
    27 Мар 2011
#14
Drunya, сразу после

Code:
include_once 'sys/boot.php';
include_once 'sys/inc/module.php';


Хотел чтобы если главная, открывать вместо sys/inc/module.php например sys/inc/module_gl.php которую потом создам

Отредактировано автором 8 Мая 2011

skad0

  • Атом-мозг
  • Юзер
  • 841
  • Репутация:10 
  • Предупреждения: 0 
  • Регистрация:
    2 Окт 2010
#15
 1 
 2 
 3 
<?php if ($param[1]=='main') {
include_once 
'sys/inc/module_gl.php';
}
?>

Сашка_из_Шебекино

  • Заклинатель Атома
  • Пользователь
  • 1803
  • Репутация:87 
  • Предупреждения: 0 
  • Регистрация:
    27 Мар 2011
#16
Неа, всёравно. Ни

if ($param[1]=='main') {
echo '2';
}

ни

if ($param[1]=='index') {
echo '2';
}

не работают :(
А есть какие нибудь другие варианты, кроме $param[1] ?
Мне только это сделать и постараюсь больше не мучить вопросами :)

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#17
Сашка_из_Шебекино пишет:
Мне только это сделать и постараюсь больше не мучить вопросами [smile]
Что вы, наоборот - мучайте. Мы тут именно для этого))

Попробуйте просто проверять глобальную переменную $_SERVER['REQUEST_URI']. Она пустая, если в адресной строке нет параметров. То есть когда она такая
http://fapos.net/

Если адресная строка будет
http://fapos.net/news/
то в данной переменной будет "news"

и так далее...

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)

Сашка_из_Шебекино

  • Заклинатель Атома
  • Пользователь
  • 1803
  • Репутация:87 
  • Предупреждения: 0 
  • Регистрация:
    27 Мар 2011
#18
Drunya, спасибо. Так работает, а то всякие параметры... :) Правило линукс - не усложняй :)

Только хочу подправить. Если адрес http://fapos.net/ то $_SERVER['REQUEST_URI'] выведет /

Сашка_из_Шебекино

  • Заклинатель Атома
  • Пользователь
  • 1803
  • Репутация:87 
  • Предупреждения: 0 
  • Регистрация:
    27 Мар 2011
#19
Мы уже близки к истине :)
Но. В sys/inc/module.php сразу после копирайта Drunya вставил такой вот текст:

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
 20 
 21 
 22 
 23 
 24 
 25 
 26 
 27 
 28 
 29 
 30 
 31 
 32 
 33 
 34 
 35 
 36 
 37 
 38 
 39 
 40 
 41 
 42 
 43 
 44 
 45 
 46 
 47 
 48 
 49 
 50 
 51 
 52 
 53 
 54 
 55 
 56 
 57 
 58 
 59 
 60 
 61 
 62 
 63 
 64 
 65 
 66 
 67 
 68 
 69 
 70 
 71 
 72 
 73 
 74 
 75 
 76 
 77 
 78 
 79 
 80 
 81 
 82 
 83 
 84 
 85 
 86 
 87 
 88 
 89 
 90 
 91 
 92 
 93 
 94 
 95 
 96 
 97 
 98 
 99 
 100 
 101 
 102 
 103 
 104 
 105 
 106 
 107 
 108 
 109 
 110 
 111 
 112 
 113 
 114 
 115 
 116 
 117 
 118 
 119 
 120 
 121 
 122 
 123 
 124 
 125 
 126 
 127 
 128 
 129 
 130 
 131 
 132 
 133 
 134 
<?php // дополнительная функция выводящая контент из конфиг файлов
 
function base_for_search ($path){ 
$path =  str_replace "\r""",  trim (  implode "", @file ($path) )));
 if (  
strlen ($path) < 1){ return false; }
 return 
"~(" .  str_replace "\n""|",  preg_quote ($path,"~")) . ")~i"
}


$base_browser 'base_browser.dat';
$base_robot 'base_robot.dat';
$base_system 'base_system.dat';
$base_mobile 'base_mobile.dat';

// применим её
$base_for_search_browser base_for_search ($base_browser);
$base_for_search_robot base_for_search ($base_robot);
$base_for_search_system base_for_search ($base_system);
$base_for_search_mobile base_for_search ($base_mobile);
$base_for_search_mobile =  str_replace '\ˆ''ˆ',  substr ($base_for_search_mobile,0,-2));
$base_for_search_mobile =  str_replace ('176x220''[0-9]{3}x[0-9]{3}'$base_for_search_mobile);
$base_for_search_mobile $base_for_search_mobile."[ /-]?([a-z0-9]*)[ ]?[/]?[ ]?([a-zA-Z]*)(.*)~i";

     
//основная функция по определению броузеров
 
function detect_browser($path=''){
 global 
$base_for_search_browser,
$base_for_search_system,
$base_for_search_robot,
$base_for_search_mobile;
 if (
$path==''){$path $_SERVER['HTTP_USER_AGENT']; } 
$path =  preg_replace ("~[\(;\)]+~",'',$path);
$path =  preg_replace ("~[ ]+~"," ",$path); 

 if (
preg_match($base_for_search_robot$path$arr_r)){
$Brobot =  ucfirst ($arr_r[0]); 
$BName 'Robot';
$BVersion 'non'
$BPlatform 'non'
}

 if (
$BName == ''){
 if (
preg_match($base_for_search_mobile,$path,$match)){
$BName =  ucfirst ($match[1]);
 if (
preg_match("~ˆmot$~i",$BName)){ $BName "Motorola";}
 if (
preg_match("~ˆsie$~i",$BName)){ $BName "Siemens";}
 if (
preg_match("~ˆnokia|pcl$~i",$BName) and strlen ($match[2])>4){$match[2] =  substr ($match[2],0,4); }
$BVersion $match[2];
$BPlatform 'MobilePhone';
$Brobot 'Browser';
}
}

 if (
$BName == ''){
$base_for_search_browser =  trim (  str_replace (")~i"""$base_for_search_browser));
 if (
preg_match($base_for_search_browser.")[0-9]{0,1}[ ]?[-]?[/]?[ ]?[v]?([0-9]{0,3}[\.]?[0-9]{0,1})~i",$path,$match)){
$BName =  ucfirst ($match[1]); 
$BVersion $match[2];
}
 elseif (
preg_match("~ms[ ]?ie[ ]?([0-9]{0,1}[\.]?[0-9]{0,1})~i"$path$match)){
$BName "Explorer"
$BVersion =  str_replace (' .','',$match[1]);
}
 elseif (
preg_match("~mozilla[0-9]{0,1}[ ]?[/]?[ ]?([0-9]{0,3}[\.]?[0-9]{0,1})~i",$path,$match)){
$BName "Mozilla"
$BVersion $match[1];
}
 if (
$BName==''){$BName 'Unknown'$BVersion='Unknown';} 
}

 if (
$BPlatform != 'MobilePhone'){ 
 if (
preg_match("~win[dows]{0,4}[ ]{0,1}(nt|xp|me|ce|9x|95|98|2000|32|3\.1)[ ]?[0-9]{0,1}[\.]?[0-9]{0,1}~i",$path,$matches)){
$matches[0] =  preg_replace "~[ ]+~i"'',  trim ($matches[0]));
$matches[0] =  preg_replace ("~dows~i"''$matches[0]);
 if (
preg_match("~win(9x|98)~i",$matches[0])){$matches[0]='Win32';}
$BPlatform $matches[0];
}
 elseif (
preg_match("~windows~i",$path)){ $BPlatform 'Win32'; }
 elseif (
preg_match($base_for_search_system,$path,$matches)){ 
 if (
preg_match("~mac~i",$matches[0])){$matches[0]='MacOS';}
$BPlatform $matches[0]; 
}
 if (
$BPlatform==''){$BPlatform 'Unknown';} 
}

 if (
$BName=='Unknown' and $Brobot==''){
 if (
preg_match($base_for_search_robot$path1$arr_r)){
$Brobot =  ucfirst ($arr_r[0]); 
$BName 'Robot';
$BVersion 'non'
$BPlatform 'non'
}
}

 if (
$BName!='Robot' and $BVersion!='Unknown' and $BPlatform!='Unknown'){$Brobot 'Browser';}
 else {
$BVersion='non'$BPlatform='non'$BName='Robot';
 if (
$Brobot==''){$Brobot='Unknown';}
}

 if (
$BName!='Robot' and $BPlatform!='MobilePhone'){
$_array =  array ();
 if (
$_SERVER['HTTP_ACCEPT']!='') { $_array[] = 1; } 
 if (
$_SERVER['HTTP_ACCEPT_ENCODING']!=''){ $_array[] = 2; }
 if (
$_SERVER['HTTP_ACCEPT_LANGUAGE']!=''){ $_array[] = 3; }
 if (
$_SERVER['HTTP_CONNECTION']!='') { $_array[] = 4; }
 if (
count($_array) < 3){
$BVersion "bad; ACCEPT=".$_SERVER['HTTP_ACCEPT'].
 
"; ENCODING=".$_SERVER['HTTP_ACCEPT_ENCODING'].
 
"; LANGUAGE=".$_SERVER['HTTP_ACCEPT_LANGUAGE'].
 
"; CONNECTION=".$_SERVER['HTTP_CONNECTION']; 

}

 return array (
$BName,$BVersion,$BPlatform,$Brobot);
}

     
// $user_agent - строка о броузере
$user_agent $HTTP_SERVER_VARS["HTTP_USER_AGENT"];
     
// применим основную функцию
$user_arr detect_browser($user_agent);
     
// имя броузера
$BName $user_arr[0];
     
// версия
$BVersion $user_arr[1];
     
// платформа
$BPlatform $user_arr[2];
     
// имя робота
$Brobot $user_arr[3];

     
// Плохой броузер
 
if ( preg_match ("~bad~"$BVersion)){
$BName 'Robot'
$Brobot 'Unknown';
$user_agent $BVersion;
}
?>

теперь если после него вывести

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
 20 
 21 
 22 
<?php if ($Brobot == "Unknown"){
     
// печатаем пользователю, что он плохой
      
print "Вы неопределённый Робот!";
     
// останавливаем программу
      
exit ;
}
 elseif (
$BName == "Robot"){
     
// если робот хороший
      
print "Вы Робот по имени $Brobot";
     
// даём индексировать весь сайт
}
 elseif (
$BPlatform == 'MobilePhone'){
     
// если на сайт мобилный телефон
      
print "Вы мобилный телефон по имени $BName $BVersion<br>";
     
// далее идёт WAP версия сайта
      
exit ;
}
 elseif (
$Brobot == "Browser"){
     
// если на сайт зашёл броузер
       
print "Вы броузер по имени $BName $BVersion<br>";
       print 
"Ваша операционка $BPlatform";
}
?>

то на странице вверху отобразится

Code:
Вы броузер по имени Opera 9.8
Ваша операционка Linux

НО. Это сделано не для того чтобы пользователь знал о себе, а для того, чтобы в зависимости от браузера выдавать разные ссылки для
Цитата
$html = $this->Parser->getAndParse('main.html' );
Проблема заключается в том, что, как я понимаю, после
Code:
if (!empty($this->template) && $this->wrap == true) {
не действуют исходные коды. К примеру такой вот код:

 1 
 2 
 3 
 4 
 5 
 6 
 7 
<?php if (!empty($this->template) && $this->wrap == true) {

            
$html $BName;

            
$html $this->Parser->getAndParse('main.html' );

.........
?>

не работает. Как правильно сделать?

На всякий случай прикрепил файл
Прикрепленные файлы:
Прикрепление1: Открыть файл 15.126 Kb

Drunya

  • Man of God
  • Админ
  • 3527
  • Репутация:110 
  • Предупреждения: 0 
  • Регистрация:
    30 Ноя -0001
#20
Я бы сделал по проще. Например поместить данные о юзере в сессию(точнее туда надо поместить лишь какой нибудь флаг, говорящий о том какую версию сайта отдавать). Например
 1 
 2 
<?php $_SESSION['site_version'] = 'wap';?>

После чего уже в самой функции getAndParse() в файле /sys/fnc/document_parser.class.php

сделать проверку этой переменной и в зависимости от не отдавать файлы либо WAP либо WEB.
Например

 1 
 2 
<?php $file = ($_SESSION['site_varsion'] == 'wap') ? 'wap_' $file $file;
// Дальше как обычно. В этом примере подразумевается что файлы шаблонов для вапа будут с приставкой "wap_" и находиться в тех же каталогах?>

Я горжусь тем, что создал бесплатную CMS - AtomX. И люблю нашу команду)
1 2 3 4 ... >>
Сейчас online: 42. Зарегистрированных: 1. Гостей: 41.