Форум SAPE.RU

Форум SAPE.RU (http://forum.sape.ru/index.php)
-   Установка кода на различные движки (http://forum.sape.ru/forumdisplay.php?f=26)
-   -   Подскажите как поставить код сапы на php с выводом тестовых файлов. (http://forum.sape.ru/showthread.php?t=88906)

origammi 05.05.2013 14:00

Подскажите как поставить код сапы на php с выводом тестовых файлов.
 
Не пойму как ставить код сапы на сайт.
Сайт сам сделан на php но текстовые страницы сохраняются в файлах
типа index.txt и выводятся потом через php на сайте.
Если ставить код и пользоваться мануалом то ссылки можно установить
только на костях сайта т.е. в футере и сайт баре и они будут сквозные.
А как поставить так чтобы ссылки стояли на текстовых страницах ?
Получается нужно ставить их по методике установки ссылок на html ?

MonAmur 05.05.2013 14:13

нет. по методике для сайтов на пхп.
создайте инклюд с кодом сапы и инклюдьте как угодно.

Добрый 05.05.2013 14:24

А текст как вставляется? Тем же способом и код сапы. Под текстом, например.

origammi 05.05.2013 17:32

текст вставляется таким образом :

<?php

include ('cms/functions/le-format.php');
include ('cms/functions/convert-characters.php');

$filename = "cms/textfiles/index.txt";
if (file_exists($filename)) {
// Get the contents
$file_contents = file_get_contents($filename);
$file_contents = autop($file_contents, 0);
$file_contents = convert_chars($file_contents, 0);
$output = $file_contents;
// Print the contents
echo $output;
} else {
echo '<p>No content. The associated text file could not be found.</p>';
}

?>

отдельно создаются текстовые файлы типа site.txt
Если в ник вставлять
<? echo $sape->return_links($1); ?>
то этот текст так и появляется на странице т.е. он написан как текст пхп не срабатывает. Что посоветуете ?

Добавлено через 17 минут
В роди как бы получилось но вот где должны стоять ссылки выводится :
return_links(); ?> это нормально ?

MonAmur 05.05.2013 18:29

вставляйтк так же, как и это:
include ('cms/functions/le-format.php');

и в инклюд вставляйте весь код, а не только <? echo $sape->return_links(); ?>

читайте инструкцию и делайте по ней. много раз читайте.

qkowlew 05.05.2013 20:42

добавить код надо вот так:

PHP код:

<?php

  
include ('cms/functions/le-format.php');
  include (
'cms/functions/convert-characters.php');

  
$filename "cms/textfiles/index.txt";
  if (
file_exists($filename)) {

     
define('_SAPE_USER''ваш код');
     require_once(
$_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
     
$sape = new SAPE_client();
     
$sape_context = new SAPE_context();

    
// Get the contents
    
$file_contents $sape_context->replace_in_text_segment(file_get_contents($filename)) . $sape->return_links();
    
$file_contents autop($file_contents0);
    
$file_contents convert_chars($file_contents0);
    
$output $file_contents;
    
// Print the contents
    
echo $output;
  } else {
    echo 
'<p>No content. The associated text file could not be found.</p>';
  }

?>


origammi 06.05.2013 23:20

Цитата:

Сообщение от MonAmur (Сообщение 1335333)
вставляйтк так же, как и это:
include ('cms/functions/le-format.php');

и в инклюд вставляйте весь код, а не только <? echo $sape->return_links(); ?>

читайте инструкцию и делайте по ней. много раз читайте.

Уважаемы эксперт MonAmur, проверьте пожалуйста. Сделал как вы посоветовали но эффекта нет.
Я создал файлы perem.php :
<?php
global $sape;
if (!defined('_SAPE_USER')){
define('_SAPE_USER', 'Мой код');
}
require_once(realpath($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php'));
$o['force_show_code'] = true;
$sape = new SAPE_client($o);
?>

Затем создал файл links.php:
<?php
global $sape;
echo $sape->return_links();
?>
Эти файлы положил в папки, путь: cms/includes/perem.php и cms/includes/links.php

И как вы сказали инклюдю их в странице, будет выделено жирным.

<body>

<div id="wrap">

<div id="header"></div>

<div id="content">

<?php
include ('cms/includes/perem.php');
?>

<?php

include ('cms/functions/le-format.php');
include ('cms/functions/convert-characters.php');

$filename = "cms/textfiles/index.txt";
if (file_exists($filename)) {


// Get the contents
$file_contents = file_get_contents($filename);
$file_contents = autop($file_contents, 0);
$file_contents = convert_chars($file_contents, 0);
$output = $file_contents;
// Print the contents
echo $output;
} else {
echo '<p>No content. The associated text file could not be found.</p>';
}

?>

</div><!-- content_eof //-->
<div id="navigation">

<ul id="menu">
<li><strong>Home Page</strong></li>
<?php

include ('cms/classes/makebutton.class.php');
include ('cms/includes/menu.php');

?>
<li><a href="contact" title="Contact">Contact</a></li>
</ul>

</div><!-- navigation_eof //-->
<div id="footer">

<p>CMS by Patrick Taylor</p>

<?php include ('cms/includes/tracking.php'); ?>
<?php include ('cms/includes/links.php'); ?>
</div><!-- footer_eof //-->
</div><!-- wrap_eof //-->

</body>
</html>

Строка <!--check code--> не появилась , почему ?
Права на папку поставил 777
файл links.db пустой.

Добавлено через 2 минуты
qkowlew ваш метод то ж пробовал и ничего.

qkowlew 06.05.2013 23:46

Цитата:

Сообщение от origammi (Сообщение 1335314)
Если ставить код и пользоваться мануалом то ссылки можно установить только на костях сайта т.е. в футере и сайт баре и они будут сквозные.

Похоже, что у Вас неверное представление о том, как работает Ваш сайт, да и код сапе тоже. :(

1. Всё-таки для начала разберитесь в том, где Вы будете добавлять ссылки, и вместо добавления кода сапе для начала сделайте вывод например слова test средствами php:
PHP код:

echo 'test'

Как только Вы увидите в браусере на всех страницах в нужном Вам месте слово test (а не echo 'test'; !), замените строку echo 'test'; на:

PHP код:

    define('_SAPE_USER''ваш код');
     require_once(
$_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
     
$o['force_show_code'] = true;
     
$sape = new SAPE_client($o);
     echo 
$sape->return_links(); 

Если и после этого Вы не увидите проверочного кода - значит, у Вас неверно вызывается (как правило - кривой путь) или неверно работает sape.php.

Создайте в корне сайта файл phpinfo.php с содержимым:
PHP код:

<?php
    define
('_SAPE_USER''ваш код');
 echo 
$_SERVER['DOCUMENT_ROOT']  . '<br>' ;
if (
file_exists($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php')) {
echo 
'sape.php в правильном месте в самом деле существует<BR>' ;
} else {
echo 
'sape.php - не получается найти по указанному пути<BR>' ;
 }
phpinfo();
 
?>

и зайдите на http://вашсайт/phpinfo.php
и первые две строки полученной страницы скопируйте сюда.

origammi 07.05.2013 00:33

Цитата:

Сообщение от qkowlew (Сообщение 1335603)
Похоже, что у Вас неверное представление о том, как работает Ваш сайт, да и код сапе тоже. :(

Да это верно, я не знаю php, но как работает догадываюсь.
Цитата:

1. Всё-таки для начала разберитесь в том, где Вы будете добавлять ссылки, и вместо добавления кода сапе для начала сделайте вывод например слова test средствами php:
PHP код:

echo 'test'


Это смог сделать слово тест пропечатолось.
Цитата:

Как только Вы увидите в браусере на всех страницах в нужном Вам месте слово test (а не echo 'test'; !), замените строку echo 'test'; на:

PHP код:

    define('_SAPE_USER''ваш код');
     require_once(
$_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php');
     
$o['force_show_code'] = true;
     
$sape = new SAPE_client($o);
     echo 
$sape->return_links(); 

Цитата:

Если и после этого Вы не увидите проверочного кода - значит, у Вас неверно вызывается (как правило - кривой путь) или неверно работает sape.php.

код не увидел, он не появился.
Цитата:

Создайте в корне сайта файл phpinfo.php с содержимым:
PHP код:

<?php
    define
('_SAPE_USER''ваш код');
 echo 
$_SERVER['DOCUMENT_ROOT']  . '<br>' ;
if (
file_exists($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php')) {
echo 
'sape.php в правильном месте в самом деле существует<BR>' ;
} else {
echo 
'sape.php - не получается найти по указанному пути<BR>' ;
 }
phpinfo();
 
?>

и зайдите на http://вашсайт/phpinfo.php
и первые две строки полученной страницы скопируйте сюда.
Вот эти строки :
/home/www/мойсайт.ru
sape.php - не получается найти по указанному пути
ну и под строками картинка с версией пхп

Не пойму корне сайта лежит папка с именем sfdfsdfdsweer (мой код) права на нее 777, внутри папки лежит sape.php
Почему не виден sape.php?

qkowlew 07.05.2013 02:59

Цитата:

Сообщение от origammi (Сообщение 1335609)
Вот эти строки :
/home/www/мойсайт.ru
sape.php - не получается найти по указанному пути
...
Почему не виден sape.php?

Значит, на хостинге, которым Вы пользуетесь, полный путь, по которому отыскиваются файлы сайта, по какой-то причине (их там может быть штук 5 разных :) отличается от стандартного решения, которое написано в FAQ sape.

Самый простой способ получить работающий вариант мне представляется таким:

на странице http://твойсайт/phpinfo.php
найди строку таблицы, начинающуюся с SCRIPT_FILENAME и скопируй себе то, что во второй ячейке этой строки - БЕЗ имени phpinfo.php

должно получиться что-то вроде
/home/www/мойсайт.ru
или
/мойсайт.ru
или ВООБЩЕ пустая строка.

Вот эту скопированную строку в одинарных кавычках и подставь вместо $_SERVER['DOCUMENT_ROOT'] в строку:

PHP код:

require_once($_SERVER['DOCUMENT_ROOT'].'/'._SAPE_USER.'/sape.php'); 

должно получиться что-то типа

PHP код:

require_once('/home/www/мойсайт.ru'.'/'._SAPE_USER.'/sape.php'); 

и попробуй снова посмотреть чек код.


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

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