Форум SAPE.RU

Форум SAPE.RU (http://forum.sape.ru/index.php)
-   Вопросы по работе системы (http://forum.sape.ru/forumdisplay.php?f=13)
-   -   Установка кода на Plasticat (http://forum.sape.ru/showthread.php?t=6182)

BotaniQ 28.08.2007 10:10

Установка кода на Plasticat
 
Как подружить Sape и Plasticat - подскажите плиз.

MeRcuRiO 28.08.2007 10:18

а че за зверь Пластикат?

Евген 28.08.2007 11:05

Цитата:

Как подружить Sape и Plasticat - подскажите плиз.
а что для этого сделали? описывайте что куда и как и какие ошибки вылазят, а то все телепаты еще спят ;)

BotaniQ 28.08.2007 12:29

Вот index.php - вроде по скриптам других каталогов туда код вставляли.

PHP код:

<?php
        ini_set
("display_errors",1);
        
ini_set("max_execution_time",90);
        
error_reporting(E_ALL);
//        ini_set("session.use_trans_sid",on);
//        ini_set('session.use_cookies', true);
//        ini_set('session.use_only_cookies', true);
        
ini_set('url_rewriter.tags''');

        
error_reporting(E_ALL);

        
setlocale(LC_ALL,"ru_RU.CP1251");

        
// вспомогательные файлы
        
require("./config.php");    // настройки доступа к БД
        
require("./modules.php");    // файл описания модулей
        
require("./settings.php");   // настройки сайта
        
require("./tables.php");   // таблицы
        
require("./functions.php");  // глобальные функции

        //$start_time = getmicrotime();
        // подключаем классы
        
require("./classes/class.template.php");
        require(
"./classes/class.item.php");
        require(
"./classes/class.list.php");
        require(
"./classes/class.tree.php");
        require(
"./classes/class.pages.php");
        require(
"./classes/class.sysmess.php");
        require(
"./classes/class.mailer.php");
        require(
"./classes/class.section.php");
        require(
"./classes/class.meta.php");
        require(
"./classes/class.site.php");
        require(
"./classes/class.news.php");
        require(
"./classes/class.banner.php");
        require(
"./classes/class.settings.php");
        require(
"./classes/class.settings_groups.php");
        require(
"./classes/class.faq.php");
        require(
"./classes/class.link.php");
        require(
"./classes/class.counter.php");
        require(
"./classes/class.checklink.php");
        require(
"./classes/class.book.php");

        
// текущая страница
        
$page getVar('page','default');

        
session_start();
        
$GLOBALS['systemMess'] = new cSysMessStack();

        
// соединение с MySQL сервером
        
if (!($db mysql_connect($db_host$db_username$db_password)))
                die(
ERR_DB_NOT_CONNECTED);

        
//Устанавливаем кодировку БД
        
mysql_query("SET NAMES cp1251");
        
mysql_query("SET COLLATION_CONNECTION=CP1251_GENERAL_CI");

        
// выбор нужной БД
        
if (!mysql_select_db($db_dbname$db))
                die(
ERR_DB_NOT_SELECTED);

        
//загружаем настройки
        
load_sets();

        
$GLOBALS['curr_node_id']=getInt('node_id',TREE_ROOT_NODE_ID);
        
//создаем дерево
        
$GLOBALS['tree'] = new cOrderedTree();
        
$GLOBALS['tree']->load();

        
//Возвращает id первого узла в массиве имен $urls. Каждый последующий элемент - родитель предыдущего
        
function getNodeId($urls)
        {
            if (
count($urls)==0) return TREE_ROOT_NODE_ID;


              
$url=reset($urls);

            
//Смотрим: а есть ли вообще url_name? Может быть, явно указан id?
            
if (preg_match('/^rubric([0-9]+)$/i',$url,$regs))
            {
                
$id=intval($regs[1]);
                
$sql="SELECT id FROM `".TABLE_SHOP_NODES."` WHERE id='".$id."'";
                
$res=doSQL($sql,__LINE__,__FILE__);
                if (
mysql_num_rows($res)) return $id;
                return 
TREE_ROOT_NODE_ID;
            }

            
//Пытаемся получить id прямой выборкой (с надеждой, что таких имен больше нет)
               
$sql "SELECT id FROM `".TABLE_SHOP_NODES."` WHERE `url_name`='".$url."'";
               
$res doSQL($sql,__LINE__,__FILE__);

               
//Если ничего не найдено, то такого узла нет
               
if (mysql_num_rows($res)<1)
                   return 
TREE_ROOT_NODE_ID;

               
//Если найден ровно один узел, то он - искомый
               
if (mysql_num_rows($res)==1)
               {
                   
$r=mysql_fetch_array($res);
                   return 
$r['id'];
               }

               
//Если найдено более одного узла, то нужно учитывать еще и родительские узлы

            //Убираем первый элемент массива и пытаемся искать
            
$new_urls=$urls;
            foreach (
$new_urls as $key=>$url)
            {
                unset(
$new_urls[$key]);
                break;
            }
            
$parent_id=getNodeId($new_urls);

               
$sql "SELECT id FROM `".TABLE_SHOP_NODES."` WHERE `url_name`='".$url."' AND parent_id='".$parent_id."'";
               
$res doSQL($sql,__LINE__,__FILE__);
               
$r=mysql_fetch_array($res);
               return 
$r['id'];
        }

        
//url_name
        
$curr_url_name getVar('url_name');
        
$curr_node_id=TREE_ROOT_NODE_ID;
        if (!empty(
$curr_url_name))
        {
            
//получаем строку запроса
            
$req $_SERVER['REQUEST_URI'];

            
//Отрезаем имя подпапки
            
$a=basename(get_set('site_host'));
            
$a='/'.$a.'/';

            if (
substr($req,0,strlen($a))==$a)
                
$req=substr($req,strlen($a));

            
$req=ereg_replace('page([0-9]+)[/]?$','',$req);
            
$req=ereg_replace('site_([0-9]+)\.html$','',$req);
            
//echo "Строка запроса $req<br>";

            //Получаем все звенья пути к рубрике
            
$urls=explode("/",$req);
            foreach (
$urls as $key=>$url)
                if (
$url=='') unset($urls[$key]);
            
$urls=array_reverse($urls);
               
$curr_node_id=getNodeId($urls);
        }

        
// подключаем страницу
        
require("./pages/page.".$PAGES[$page].'.php');

        
// инициализация шаблона
        
$tpl = new cTemplate('./templates');
        
// подключение главного шаблона страницы
        
$tpl->loadTemplateFile($PAGE_TEMPLATE);

        
// подключаем нужные модули и инициализируем их
        
foreach ($PAGE_MODULES as $module)
        {
                require_once(
"modules/mod.".$MODULES[$module][0].".php");
                
$OBJECTS_MOD[$module] = new $MODULES[$module][1]();
                
$OBJECTS_MOD[$module]->Init();
        }

        
// запускаем
        
foreach ($PAGE_MODULES as $module)
                
$OBJECTS_MOD[$module]->Run();

        
// собираем страницу
        
$tpl->parseBlock('_INIT', array(
                
'PAGE_TITLE' => $PAGE_TITLE,
                
'PAGE_DESCRIPTION' => $PAGE_DESCRIPTION,
                
'PAGE_KEYWORDS' => $PAGE_KEYWORDS,
                
'BASE_HREF' => str_replace('index.php','','http://'.$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME'])));

        
// и отображаем
        
$tpl->show();

        
mysql_close($db);
        
//echo getmicrotime()-$start_time;
?>


zhegloff 28.08.2007 14:10

Что то в коде не видно сапы :)
Вы сами то пробовали вставить?

BotaniQ 28.08.2007 15:16

Цитата:

Сообщение от zhegloff (Сообщение 36746)
Что то в коде не видно сапы :)
Вы сами то пробовали вставить?

Да пробовал - в конец.
Выдает return_links(); ?>
Добавление строчки из ФАК в htaccess не помогает

Jooz 28.08.2007 15:47

Код сапе должен быть


<?PHP
ваш код
КОД САПЕ

ваш код
?>

либо
<?PHP
ваш код
КОД САПЕ

?>

А вы походу между итерпритатора еще раз его вызываете.
На страничке только 1 раз <? и один раз ?>
Либо <? ?> <? ?> сколько угодно раз, но не
<? <? ?> ?>
<? <? ?>
<? ?> ?>

Да, и это не то что элементарные знания PHP это вообще на уровне логики должно быть.

Евген 28.08.2007 15:59

Цитата:

Сообщение от zhegloff (Сообщение 36746)
Что то в коде не видно сапы :)
Вы сами то пробовали вставить?

+1.
код впишите, чтоб было понятно что вы там пишете.

BotaniQ 28.08.2007 16:47

Цитата:

Сообщение от LIGHT (Сообщение 36764)
Код сапе должен быть


<?PHP
ваш код
КОД САПЕ

ваш код
?>

либо
<?PHP
ваш код
КОД САПЕ

?>

А вы походу между итерпритатора еще раз его вызываете.
На страничке только 1 раз <? и один раз ?>
Либо <? ?> <? ?> сколько угодно раз, но не
<? <? ?> ?>
<? <? ?>
<? ?> ?>

Да, и это не то что элементарные знания PHP это вообще на уровне логики должно быть.

Добавлял вот так:
<? ?> <? ?> и <? и один раз ?>

zhegloff 28.08.2007 16:50

Цитата:

Сообщение от BotaniQ (Сообщение 36774)
Добавлял вот так:
<? ?> <? ?> и <? и один раз ?>


Вы код с сапой покажете или нет?


Часовой пояс GMT +3, время: 18:36.

Работает на vBulletin® версия 3.8.7.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
SAPE.RU — система купли-продажи ссылок с главных и внутренних страниц сайтов.