Старый 08.11.2008, 23:53   #1
Новичок
 
Регистрация: 26.09.2008
Сообщений: 34
Вес репутации: 189
Akela скоро станет известен
По умолчанию Установка кода с PHP

Все. Чувствую себя окончательным идиотом.

Итак. Есть сайт, php работает. Страницы собираются с помощью php include кусков. Заголовок там или еще чего.

Берем код. Вставляем в страницу заголовок.

<?php
global $sape;
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'XXXXXXXXXXXX');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape = new SAPE_client();
?>

Берем набор кодов для ссылок, раскидываем по колонкам и в хвост страницы.

<?php
global $sape;
echo $sape->return_links();
?>

Не работает. Файл в каталоге скрипта XXXXXXXXXX с links создается. Не пустой. Система код НЕ ВИДИТ.


Крутим и так и эдак. Не работает. Сносим все нахрен,

Вставляем

<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'XXXXXXXXXXXXX');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape = new SAPE_client();
echo $sape->return_links();
?>

Этот код моментально принимается. Но иднексируется одна страница. Где копать? Второй день экспериментирую.

В смысле я ХОЧУ разбросать ссылки по сайту, ну никак.

Последний раз редактировалось Akela; 09.11.2008 в 00:01. Причина: Добавлено сообщение
Akela вне форума   Ответить с цитированием
Старый 09.11.2008, 00:04   #2
Особый статус
 
Регистрация: 23.03.2008
Адрес: localhost
Сообщений: 2,594
Вес репутации: 322
Ufaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущее
Отправить сообщение для Ufaweb с помощью ICQ
По умолчанию

Цитата:
Сообщение от Akela Посмотреть сообщение
lobal $sape;
Убрать.

Цитата:
Сообщение от Akela Посмотреть сообщение
$sape = new SAPE_client();
Заменить на $sape = new SAPE_client(array('request_uri'=>$_SERVER['REQUEST_URI']));
Ufaweb вне форума   Ответить с цитированием
Старый 09.11.2008, 00:09   #3
Новичок
 
Регистрация: 26.09.2008
Сообщений: 34
Вес репутации: 189
Akela скоро станет известен
По умолчанию

В пхп полный л*х. Нахрена вообще нужна версия со строчкой глобал?

Из вызова блоков ее тоже надо убрать?

UPD. Не работает.

Последний раз редактировалось Akela; 09.11.2008 в 00:18.
Akela вне форума   Ответить с цитированием
Старый 09.11.2008, 00:59   #4
Специалист
 
Регистрация: 25.09.2007
Сообщений: 361
Вес репутации: 211
shr - как роза среди колючекshr - как роза среди колючекshr - как роза среди колючекshr - как роза среди колючек
По умолчанию

строчка с глобал нужна, чтобы объект $sape, объявленный в одном php-скрипте был виден в другом

Цитата:
Берем набор кодов для ссылок, раскидываем по колонкам и в хвост страницы.

<?php
global $sape;
echo $sape->return_links();
?>
вам нужно писать echo $sape->return_links(число ссылок в блоке); и только в самом последнем блоке echo $sape->return_links();
shr вне форума   Ответить с цитированием
Старый 09.11.2008, 01:22   #5
Специалист
 
Регистрация: 23.08.2007
Сообщений: 189
Вес репутации: 206
TracKer на пути к лучшему
По умолчанию

Цитата:
Сообщение от Akela Посмотреть сообщение
В пхп полный л*х. Нахрена вообще нужна версия со строчкой глобал?

Из вызова блоков ее тоже надо убрать?

UPD. Не работает.
Я так понимаю у вас шаблон разделен на несколько частей (как минимум заголовок отдельно), поэтому нужно класс $sape поместить в такое место из которого он будет доступен везде, например можно попробовать засунуть его в $GLOBALS['sape'], то есть теперь код будет выглядеть так:

Код:
=== Часть 1 ===============================
<?php
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'XXXXXXXXXXXX');
}
require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
$sape = new SAPE_client();
$GLOBALS['sape'] = $sape;
?>
=========================================

=== Часть 2 ===============================
<?php
$sape = $GLOBALS['sape'];
echo $sape->return_links(1);
?>
=========================================
Попробуйте так. Как пользоваться функцией вывода уже написал shr.

З.Ы. Если не получится можно попробовать засунуть класс в переменную сессии, но тогда в конце придется ее очищать, или в начале.
__________________
IT News
TracKer вне форума   Ответить с цитированием
Старый 09.11.2008, 01:25   #6
Особый статус
 
Регистрация: 23.03.2008
Адрес: localhost
Сообщений: 2,594
Вес репутации: 322
Ufaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущееUfaweb - прекрасное будущее
Отправить сообщение для Ufaweb с помощью ICQ
По умолчанию

Цитата:
Сообщение от shr Посмотреть сообщение
чтобы объект $sape, объявленный в одном php-скрипте был виден в другом
Бред. Все переменные, объявленные в родительском скрипте и всех подключаемых, доступны и из остальных проинклюженных скриптов... А лишним глобалом можно редекларировать переменную со всеми вытекающими...
Ufaweb вне форума   Ответить с цитированием
Старый 09.11.2008, 02:05   #7
Специалист
 
Регистрация: 25.09.2007
Сообщений: 361
Вес репутации: 211
shr - как роза среди колючекshr - как роза среди колючекshr - как роза среди колючекshr - как роза среди колючек
По умолчанию

Не бред, переменнные будут доступны только там, где они находятся в области видимости. А так как обычно код вставляют в всякие функции вывода, то global нужен.

По-моему, между использованием global и GLOBALS в контексте этой темы разницы нет.
shr вне форума   Ответить с цитированием
Старый 09.11.2008, 02:56   #8
Новичок
 
Регистрация: 26.09.2008
Сообщений: 34
Вес репутации: 189
Akela скоро станет известен
По умолчанию

Трэкер, аллилуя. Ваш код сработал. Надеюсь, что все выводится будет без проблем. Спасибо большое. Последний надеюсь вопрос.
Код выводится на страницах по сетке 4-3-2. Но для простоты я поставил на все страницы по 4 точке вывода кода. Это не помешает?
Akela вне форума   Ответить с цитированием
Старый 09.11.2008, 07:44   #9
Старый зулус
 
Аватар для slavs™
 
Регистрация: 18.02.2008
Адрес: КваЗулу-Наталь
Сообщений: 1,649
Вес репутации: 337
slavs™ - прекрасное будущееslavs™ - прекрасное будущееslavs™ - прекрасное будущееslavs™ - прекрасное будущееslavs™ - прекрасное будущееslavs™ - прекрасное будущееslavs™ - прекрасное будущееslavs™ - прекрасное будущееslavs™ - прекрасное будущееslavs™ - прекрасное будущееslavs™ - прекрасное будущее
По умолчанию

Цитата:
Сообщение от shr Посмотреть сообщение
Не бред, переменнные будут доступны только там, где они находятся в области видимости. А так как обычно код вставляют в всякие функции вывода, то global нужен.
еще какой бред
slavs™ вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Установка кода на IPB kuzen Установка кода на различные движки 296 11.02.2016 21:38
Установка кода на .jsp Rovno Установка кода на различные движки 4 29.11.2010 13:01
установка кода natalya Вопросы от новичков 3 03.04.2008 15:35
Установка кода на by.ru paulg Установка кода на различные движки 1 27.01.2008 03:52
Установка кода на ASP evs-el Вопросы по работе системы 2 09.08.2007 10:10


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