Автор Тема: Вставка скрипта Perl в шаблон [Решено]  (Прочитано 1668 раз)

28 Сентябрь 2012, 12:00:35
  • Ветеран
  • *****
  • Сообщений: 991
  • Репутация: +5/-0
  • Иногда заглядываю
    • Просмотр профиля
    • Помощь патентообладателям по продаже патентов.
Уважаемые знатоки не подскажете как вывести на сайте вот такое выражение SGI скрипта (результат)

 <!--#include virtual="/cgi-bin/textcount.cgi"-->  (счетчик просмотров)

У меня пока не работает, может у кого ни будь заработало?
Не боги горшки обжигают, не зачем им такой хренью заниматься.
28 Сентябрь 2012, 12:11:52
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 21021
  • Репутация: +25282/-0
  • Prestashop - просто и эффективно
    • Просмотр профиля
{include file="абсолютный путь к файлу"}
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
28 Сентябрь 2012, 17:50:35
Ответ #2
  • Ветеран
  • *****
  • Сообщений: 991
  • Репутация: +5/-0
  • Иногда заглядываю
    • Просмотр профиля
    • Помощь патентообладателям по продаже патентов.
Инклюд к скрипту Perl в папке sgi-bin?
Не боги горшки обжигают, не зачем им такой хренью заниматься.
29 Сентябрь 2012, 11:24:54
Ответ #3
  • Администратор
  • Ветеран
  • *****
  • Сообщений: 102479
  • Репутация: +34219/-0
    • Просмотр профиля
Где должны храниться скрипты Perl спросите у хостинга, в папке cgi-bin или в другой.
01 Октябрь 2012, 00:24:05
Ответ #4
  • Ветеран
  • *****
  • Сообщений: 991
  • Репутация: +5/-0
  • Иногда заглядываю
    • Просмотр профиля
    • Помощь патентообладателям по продаже патентов.
Попробовал.  {include file="абсолютный путь к файлу"}
Просто выводит весь текст скрипта в окно браузера сам счетчик не работает.
Не боги горшки обжигают, не зачем им такой хренью заниматься.
01 Октябрь 2012, 09:23:00
Ответ #5
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22315
  • Репутация: +17114/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Smarty - это компилирующий обработчик шаблонов для PHP.
Вставка шаблонов tpl.
{include file="абсолютный путь к файлу"}Вставка php файла
{include_php file='/path/to/file.php'}
Но зависит от версии smarty, include_php устарела и {php}{/php} тоже. Если include не работает, тогда можно попробывать  {fetch}
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
01 Октябрь 2012, 10:25:16
Ответ #6
  • Ветеран
  • *****
  • Сообщений: 991
  • Репутация: +5/-0
  • Иногда заглядываю
    • Просмотр профиля
    • Помощь патентообладателям по продаже патентов.
По моему все здесь что то не так понимают.
Вопрос идет о вставке скрипта PERL,   sgi-bin, а не .php
Не боги горшки обжигают, не зачем им такой хренью заниматься.
01 Октябрь 2012, 13:19:20
Ответ #7
  • Ветеран
  • *****
  • Сообщений: 21021
  • Репутация: +25282/-0
  • Prestashop - просто и эффективно
    • Просмотр профиля
Perl-скрипт подключать таким образом нельзя, так как его будет пытаться обработать PHP-интерпретатор. Как минимум нужно добавить shebang-конструкцию и сделать его исполняемым и запускать через system с указанием прямого пути до него - однако в этом случае запуск будет происходить вне CGI-пространства.

Наверное это вы не понимаете поставленой задачи или поставновка задачи не правильная. Понятно, что
Цитировать
Smarty - это компилирующий обработчик шаблонов для PHP.
Для Perl существует FastTemplate.
Как подключить файл вам написали, теперь нужно "смешать" php и perl.

Так как и Perl и PHP являются backend-ами и служат для решения одной и той же задачи на одном сайте, то можно организовать взаимодействие между сеансами выполнения Perl-скриптов и PHP-скриптов точно такое же как и между одними PHP-скриптами. Использовать сессии, за счет реализации соответствующей сериализации данных.
Как вариант, для запуска можно использовать или shebang-конструкцию с прямым выполнения Perl-скрипта или, для того чтобы задействовать CGI-интерфейс, настройки Apache для CGI-скриптов.

Сделать можно все что угодно - нужно только старание, терпение... только зачем?
У вас чисто теоритический интерес?
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
01 Октябрь 2012, 13:30:49
Ответ #8
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22315
  • Репутация: +17114/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Может так подключить, сам не пробывал, не вижу смысла в такой задаче.
В php файле подключить скрипт.
<?PHP
require_once '/home/user/www/file.pl';
.....
или через  ob_start(), но не факт, что заработает. Но попробывать можно.

Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
01 Октябрь 2012, 13:33:16
Ответ #9
  • Ветеран
  • *****
  • Сообщений: 21021
  • Репутация: +25282/-0
  • Prestashop - просто и эффективно
    • Просмотр профиля
Цитировать
В php файле подключить скрипт.
Не будет работать, запуск будет происходить вне CGI-пространства.
Цитировать
Perl-скрипт подключать таким образом нельзя, так как его будет пытаться обработать PHP-интерпретатор. Как минимум нужно добавить shebang-конструкцию и сделать его исполняемым и запускать через system с указанием прямого пути до него - однако в этом случае запуск будет происходить вне CGI-пространства
.
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
01 Октябрь 2012, 17:06:07
Ответ #10
  • Ветеран
  • *****
  • Сообщений: 991
  • Репутация: +5/-0
  • Иногда заглядываю
    • Просмотр профиля
    • Помощь патентообладателям по продаже патентов.
Perl-скрипт подключать таким образом нельзя, так как его будет пытаться обработать PHP-интерпретатор. Как минимум нужно добавить shebang-конструкцию и сделать его исполняемым и запускать через system с указанием прямого пути до него - однако в этом случае запуск будет происходить вне CGI-пространства.

Наверное это вы не понимаете поставленой задачи или поставновка задачи не правильная. Понятно, что
Цитировать
Smarty - это компилирующий обработчик шаблонов для PHP.
Для Perl существует FastTemplate.
Как подключить файл вам написали, теперь нужно "смешать" php и perl.

Так как и Perl и PHP являются backend-ами и служат для решения одной и той же задачи на одном сайте, то можно организовать взаимодействие между сеансами выполнения Perl-скриптов и PHP-скриптов точно такое же как и между одними PHP-скриптами. Использовать сессии, за счет реализации соответствующей сериализации данных.
Как вариант, для запуска можно использовать или shebang-конструкцию с прямым выполнения Perl-скрипта или, для того чтобы задействовать CGI-интерфейс, настройки Apache для CGI-скриптов.

Сделать можно все что угодно - нужно только старание, терпение... только зачем?
У вас чисто теоритический интерес?

Интерес не чисто теоретический, на моих сайтах клиенты могут размещать
объявления для продажи (цифровой контент) и необходимо для каждого
объявления сделать счетчик количества просмотров и количества скачиваний файлов.
Не боги горшки обжигают, не зачем им такой хренью заниматься.
01 Октябрь 2012, 17:45:14
Ответ #11
  • Ветеран
  • *****
  • Сообщений: 21021
  • Репутация: +25282/-0
  • Prestashop - просто и эффективно
    • Просмотр профиля
Цитата: Vasiy
Интерес не чисто теоретический, на моих сайтах клиенты могут размещать
объявления для продажи (цифровой контент) и необходимо для каждого
объявления сделать счетчик количества просмотров и количества скачиваний файлов.
Вам лучше не изобретать велосипед, а использовать связку php+smarty.
Сделайте отдельный модуль и подключайте в шаблоне. Быстрее и надежнее.
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
11 Ноябрь 2012, 21:02:32
Ответ #12
  • Ветеран
  • *****
  • Сообщений: 991
  • Репутация: +5/-0
  • Иногда заглядываю
    • Просмотр профиля
    • Помощь патентообладателям по продаже патентов.
Ну в общем нашел решение.
Кому интересно.
От скрипта Perl отказался, взял сборку на  php. с защитой от повторных заходов и блокированием
поисковиков.
Создал на базе модуля blockadvertising клон, установил его через хук сразу над всеми модулями
центральной части, разместил в нем папку счетчика,
в файл blockadvertising.php (клон) в самый верх поставил исполняемые файлы и все заработало.
Одна особенность, счетчик выводится только вверху страницы, но считает.
Не путайте с нижним счетчиком собственных заходов клиентов он сделан на JS и вставляется через
blockadvertising.tpl в нужное место.
Не боги горшки обжигают, не зачем им такой хренью заниматься.