Перейти к контенту
  • 0

Как сделать модуль?


punkz

Вопрос

в папке sources/components_public/ лежат примеры модулей для вызова через линк index.php?autocom=

 

например файл example.php

 

 

<?php

if ( ! defined( 'IN_IPB' ) )
{
print "<h1>Incorrect access</h1>You cannot access this file directly. If you have recently upgraded, make sure you upgraded 'admin.php'.";
exit();
}


class component_public
{
/**
* IPSclass object
*
* @var object
*/
var $ipsclass;


/**
* Main function that's run from index.php
*
*/
function run_component()
{
	print "hello";
	exit();
}



}

?>

 

понятно что он будет выводить hello, но мне надо это связать с смс копилкой, а именно парсером ихним, чтоб выводились смс сообщения, вот файл парсера

 

 

<?php
/***************************************************************************
* xmlparser.php
* version 2.1 от 13.04.06
* 
* Copyright (c) 2006 Movable Co. Ltd
* www.movable.ru
* 
* проект sms.копилка www.smskopilka.ru
* 
* данный парсер Вы можете использовать как пример для доступа 
* к последним сообщеним Вашей sms.копилки
* Причем этот парсер в отличие от xmlparser.php не требует дополнительных библиотек 
* и работает без проблем с PHP 4, 5 версий
***************************************************************************/

/*
* Для работы с разбором xml вам нужен язык сценариев PHP версии от 4 или выше.
* Проконсультируйтесь с вашим хостинг провайдером.
* 
* ЗДЕСЬ ВЫВОДИТСЯ ПРИМЕР ИСПОЛЬЗОВАНИЯ ПЕРЕМЕННЫХ, ВСЕ ПОЛЯ ПОДПИСАНЫ
* ИСПОЛЬЗУЙТЕ ИХ НА СВОЕ УСМОТРЕНИЕ. 
* 
* Любая модификация данного файла возможна. Парсер предоставлен на условиях "Как есть".
* Если сделаете что-то интересное, просьба сообщить нам - support@movable.ru, внедрим с указанием вашего имени.
*/

(isset($_GET['smskopilka']))?$smskopilka=$_GET['smskopilka']:$smskopilka=NULL;
(isset($_GET['count']))?$countStr=$_GET['count']:$countStr=10;

//замените цифры в конце "XXXX" на номер Вашей sms.копилки, это тот номер, который идет после "kop+" и уберите - //
$smskopilka = ХХХ;

//количество выводимых строк, вставьте вашу цифру и уберите комментарий слева - // 
$countStr = "10";

$file = "http://smskopilka.ru/client/export/smskopilka_".$smskopilka.".xml";
$pos = 0;
$Nodes = array();

if (!($fp = fopen($file, "r"))) {
  die("Не удается открыть XML файл - ".$file.", может его нет? Или не верно указан номер sms.копилки.");
}
while ($getline = fread($fp, 4096)) {
  $data = $data . $getline;
}

$count = 0;
$pos = 0;
while ($node = GetElementByName($data, "<item", "</item>")) {
  $Nodes[$count] = $node;
  $count++;
  $data = substr($data, $pos);
}

if($countStr > $count) $countStr=$count; 
for ($i=0; $i<$countStr; $i++) {
$dateSMS = GetElementByName($Nodes[$i], "<date>", "</date>");
$timeSMS = GetElementByName($Nodes[$i], "<time>", "</time>");
$textSMS = GetElementByName($Nodes[$i], "<text>", "</text>");
$phone = GetElementByName($Nodes[$i], "<phone>", "</phone>");
$costSMS = GetElementByName($Nodes[$i], "<costSMS>", "</costSMS>");
$myPayment = GetElementByName($Nodes[$i], "<myPayment>", "</myPayment>");

/* отформатировать строку ниже можно как вам угодно,
* укажите ваше форматирование и стили, короче оформляйте как захочется
* 
* главное это полученные переменные:
* $dateSMS - дата получения sms cообщения
* $timeSMS - время получения сообщения
* $textSMS - текст сообщения
* $phone - идентификатор телефона, уникален для каждого абонента, для всех сообщений данного абонента един
* $costSMS - стоимость смс для абонента, без налогов
* $myPayment - моя доля, процент моего заработка с каждой смс согласно http://smskopilka.ru/money
*/ 
echo $dateSMS." ".$timeSMS." - ".$textSMS."<br/>";
}


//---------------------------------
function GetElementByName ($xml, $start, $end) {

  global $pos;
  $startpos = strpos($xml, $start);
  if ($startpos === false) {
   return false;
  }
  $endpos = strpos($xml, $end);
  $endpos = $endpos+strlen($end);   
  $pos = $endpos;
  $endpos = $endpos-$startpos;
  $endpos = $endpos - strlen($end);
  $tag = substr ($xml, $startpos, $endpos);
  $tag = substr ($tag, strlen($start));

  return $tag;
}



?>

 

 

скоко уже не пытался так и не смог внедрить парсер... подскажите как это сделать? мне нужен такой вот минимодуль =)

 

Спасибо!

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.