24.04.2008, 12:25 | #11 | |
Новичок
Регистрация: 19.07.2007
Сообщений: 3
Вес репутации: 0
|
Скачал код, установил.
Для замены текста использовал Код:
$text = $sape_context->replace_in_text_segment($text); Кто скачал код немного раньше, обратите внимание на замечание выше Цитата:
|
|
24.04.2008, 12:27 | #12 |
Специалист
Регистрация: 23.11.2006
Адрес: Москва
Сообщений: 121
Вес репутации: 221
|
Зависит от того, какую функцию Вы используете. Если replace_in_text_segment, то в неё Вы просто передаёте порции текста, в них модуль подставляет контекстные ссылки, если они есть, и возвращает изменённый текст. Как Вы потом собираете куски текста в код страницы - это известно только программисту конкретного движка. Это в PHP код (грубо говоря) "встраивается" в HTML, в Перле всё наоборот: скрипт на Перле отрабатывает и в течение выполнения делает вывод функцией print кода, собирая HTML-документ. Если используете функцию replace_in_page, то функцию нужно позвать после вывода HTTP-заголовков, но до вывода HTML кода.
|
24.04.2008, 12:29 | #13 | |
Специалист
Регистрация: 23.11.2006
Адрес: Москва
Сообщений: 121
Вес репутации: 221
|
Цитата:
|
|
24.04.2008, 13:54 | #14 | ||
Специалист
|
Цитата:
Это Код:
"$ENV{DOCUMENT_ROOT}/5кодa8/SAPE.pm" =~ /^(.+)$/; require $1; my $sape = new SAPE( user => '5кода8', host => '<ИМЯ_ХОСТА>', # необязательно, по умолчанию: $ENV{HTTP_HOST} charset => 'windows-1251', # необязательно, по умолчанию: windows-1251 ); print $sape->get_links; Код:
"$ENV{DOCUMENT_ROOT}/5кодa8/SAPE.pm" =~ /^(.+)$/; require $1; my $sape = new SAPE::Client ( user => '5кодa8', host => '<ИМЯ_ХОСТА>', # необязательно, по умолчанию: $ENV{HTTP_HOST} charset => 'windows-1251', # необязательно, по умолчанию: windows-1251 ); print $sape->get_links; Цитата:
Код:
"$ENV{DOCUMENT_ROOT}/5кодa8/SAPE.pm" =~ /^(.+)$/; require $1; my $sape = new SAPE::Context ( user => '5кодa8', host => '<ИМЯ_ХОСТА>', # необязательно, по умолчанию: $ENV{HTTP_HOST} charset => 'windows-1251', # необязательно, по умолчанию: windows-1251 ); print $sape->get_links; |
||
24.04.2008, 15:01 | #15 | ||
Специалист
Регистрация: 23.11.2006
Адрес: Москва
Сообщений: 121
Вес репутации: 221
|
Цитата:
Код:
host => 'mysite.ru' Цитата:
К сожалению, помогать ставить код на все площадки я не могу физически . Кто ставил движок на Ваш сайт? Возможно, у Вас есть знакомые Перл-программисты? |
||
24.04.2008, 15:47 | #16 | ||
Специалист
|
Цитата:
Цитата:
Пишу здесь подробные вопросы, потому что 01. Другим, может, поможет 02. Больше никто не пишет, хотя, наверняка сайтов 95 000: 10 = 9 500 шт в системе, наверняка, имеются. Неужели все удачно поставили? 03. Код для РНР ставят и новички. Поэтому хочется более подробного описания установки кода для контентных ссылок для ПЕРЛ Ни в РНР, ни в ПЕРЛЕ программистом не являюсь, как и, думаю, 90% посетителей этого форума. Просто - ВэбМастер, каких много. ВэбМастер, готовый учиться и, научившись, помогать другим... |
||
24.04.2008, 16:06 | #17 | |
Специалист
Регистрация: 23.11.2006
Адрес: Москва
Сообщений: 121
Вес репутации: 221
|
Цитата:
Давайте ещё раз. В каких участках кода Вашего сайта подготавливаются данные для вывода на страницу? Например, из базы данных извлекаются статьи, новости, сообщения форума и т.п., после этого они обычно подготавливаются к выводу (например, производится расстановка тегов и т.п.) и либо выводятся на экран функцией print, либо передаются в качестве параметра шаблонизатору: Код:
# получение данных из базы (пример из доки к DBI) my $emps = $dbh->selectall_arrayref( "SELECT ename FROM emp ORDER BY ename", { Slice => {} } ); unless ($html_template) { # вывод на экран, если шаблонизатор НЕ используется: foreach my $emp (@$emps) { print "Employee: $emp->{ename}\n"; } } else { # ИЛИ передача в качестве параметра шаблонизатору - в данном примере это HTML::Template $template->param(emps => $emps); } Код:
# получение данных из базы (пример из доки к DBI) my $emps = $dbh->selectall_arrayref( "SELECT ename, biography FROM emp ORDER BY ename", { Slice => {} } ); # поиск и замена КС в поле biography для каждого сотрудника: $sape_context->replace_in_text_segment(\$_->{description}) foreach @$emps; Вариант же с $sape_context->replace_in_page будет работать при скриптах такого вида: Код:
# вывод HTTP-заголовков print "Content-Type: text/html\n\n"; # установка перехватчика вызовов к print $sape_context->replace_in_page; # вывод HTML-документа print "<html><body>Здесь будет тело документа, текст которого будет целиком проанализирован для расстановки в нём КС.</body></html>" Код:
# вывод HTTP-заголовков print "Content-Type: text/html\n\n"; # установка перехватчика вызовов к print $sape_context->replace_in_page; # вывод HTML-документа print "<html><body>Здесь будет тело документа, но только в <sape_index>этом блоке</sape_index> и ещё <sape_index>вот в этом блоке текста</sape_index> будут подставлены КС.</body></html>" |
|
24.04.2008, 17:20 | #18 | ||
Специалист
|
В частности, движок на Файлах
При добавлении Кода в Хеадер перед print: Цитата:
Цитата:
|
||
24.04.2008, 17:32 | #19 |
Специалист
Регистрация: 23.11.2006
Адрес: Москва
Сообщений: 121
Вес репутации: 221
|
|
25.04.2008, 11:59 | #20 |
Специалист
|
в старой версии, если тормозит сервер, то файл == 0
в связи с чем 2 вопроса: 1. почему не сделали в старой функцию if ($response eq "") { exit; } 2. реализовано ли оно в новой версии?
__________________
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Модуль для кипа | Pikasso_40 | Курилка | 4 | 22.07.2008 02:04 |
Новый сервис для текстов. тестируем. | Mendel | Курилка | 35 | 22.06.2008 22:45 |
Новый поиск от Яндекса. Тестируем? | Александр Блохин | Яндекс | 18 | 16.04.2008 13:27 |
Самый лучший модуль для ссылок | mbmarket | Деловое сотрудничество | 6 | 31.01.2008 20:09 |
Распределение ссылок на движках | Manager | Вопросы по работе системы | 11 | 03.10.2007 15:54 |
Часовой пояс GMT +3, время: 19:25.