rus Posted July 6, 2007 Share Posted July 6, 2007 Есть у нас на сайте свинка которую нужно СМС-ками кормить. Решил её реанимировать, и хочется прям на сайт выводить сообщения, котороые посылают юзеры вместе с деньгами. Для этого есть специальный XML-файл: http://smskopilka.ru/client/export/smskopilka_4770.xml (4770 это номер копилки). Есть php-парсер который располагается по адресу: http://www.olgino.info/xmlparser.php с кодом таким: <html><head><title>smskopilka</title></head><body><?/**************************************************************************** xmlparser.php* version 2.1 от 13.04.06* * Copyright © 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 = 4770;//количество выводимых строк, вставьте вашу цифру и уберите комментарий слева - // $countStr = "10"; $file = "http://www.smskopilka.ru/client/export/smskopilka_4770.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;}?></body></html> Этот парсер вызывается с главной страницы так: <IFRAME frameborder="0" height="200" width="150" src="http://www.olgino.info/xmlparser.php" align="right"> </IFRAME> Потому как напрямую не получается его в движок странички вставить. Дык не работает! Пишет что файл ен может открыть (xml), посотрите сами на главной справа внизу: http://www.olgino.info . Почему? Как поправить? Спасибо. Quote Link to comment Share on other sites More sharing options...
Miklenic Posted July 6, 2007 Share Posted July 6, 2007 Попробуй вот так написать: <html><head><title>smskopilka</title></head> <body> <IFRAME frameborder="0" height="200" width="150" src="xmlparser.php" align="right"> </IFRAME> </body></html> Вроде работает. Проверил у себя : http://www.plati.us/xmlparser.html Quote Link to comment Share on other sites More sharing options...
rus Posted July 6, 2007 Author Share Posted July 6, 2007 Странно, а у меня всё равно не получается. Может этому xmlparser.php какие-то права особые выставить? Quote Link to comment Share on other sites More sharing options...
rus Posted July 8, 2007 Author Share Posted July 8, 2007 тест Quote Link to comment Share on other sites More sharing options...
rus Posted July 8, 2007 Author Share Posted July 8, 2007 тест2 Quote Link to comment Share on other sites More sharing options...
Valera Posted July 9, 2007 Share Posted July 9, 2007 Заменить <IFRAME frameborder="0" height="200" width="150" src="xmlparser.php" align="right"> </IFRAME> на <IFRAME frameborder="0" height="200" width="150" src="http://glazyrin.ru/11.php" align="right"> </IFRAME> Quote Link to comment Share on other sites More sharing options...
rus Posted July 9, 2007 Author Share Posted July 9, 2007 Заработало! Quote Link to comment Share on other sites More sharing options...
rus Posted July 9, 2007 Author Share Posted July 9, 2007 Ну вот, теперь у нас на главной странице обосновался миленький sms.чат СОВЕРШЕННО немодерируемый Завтра заработает Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.