php+xml/ Ошибка при подключении файла

pcguru

Guest
php+xml/ Ошибка при подключении файла

Уважаемые форумчане требуется ваша помощь. Итак,вначале собственно код и за которого все траблы...
PHP:
 <?php

$news = array();
$xml = join(' ',file('http://kovcheg.apeha.ru/inform/naim.xml'));
$xml = xmldoc($xml);

// Инициализируем
$xml->xpath_init();
// Создаем новый контекст
$ctx = xpath_new_context($xml);
// Вычисляем XPath-выражение, результатом которого являются все node <news>
$nodes = xpath_eval($ctx,'//user');


foreach($nodes->nodeset as $node)
{

   $currentNews = array();
   $currentNews['uid'] = $node->get_attribute('uid');
   $content = $node->children();
   foreach($content as $contentNode)
   {
       if (($contentNode->type==XML_ELEMENT_NODE) &&
           (in_array($contentNode->name,array('title','text'))))
           $currentNews[$contentNode->name] = $contentNode->content;
   };
   $news[] = $currentNews;
};
print_r($news)
?>
При запуске такого кода у меня возникает 404 ошибка(, либо если использую не DOM а SAX парсер данные не считываются из удалённого xml файла-никаких ошибок при этом не появляется...
Расширение файлу ставлю правильное...парс эрроров нет, неопределённых функций тоже..единственное что мне приходит в голову это я как то неправильно использовал join ...
Также если предварительно скачиваю файл http://kovcheg.apeha.ru/inform/naim.xml и закачиваю фтпклиентом на свой сервер и соответсвенно потом меняя пути в файле на локальные то всё нормально работает-файл считывается и обрабатывается что через Xpath что с помощью парсера....

Подскажите пожалуйста в чём моя ошибка..... и как её исправить....я новичёк в программировании..многое ещё не до конца понимаю...
 

slach

Новичок
1) error_reporint(E_ALL); сразу после <?php поставь
2) var_dump($xml); после строки с join
3) var_dump($xml); после строки с xmldoc
 

pcguru

Guest
slach
Попробовал,вставил и 1 и 2 и 3 и по очереди и всё вместе..результат один и тот же...404..правда один раз выскочили вот такие ошибки

Warning: file(http://kovcheg.apeha.ru/inform/naim.xml): failed to open stream: Operation timed out in /pub/home/wg143/htdocs/test/alt.php on line 5

Warning: join(): Bad arguments. in /pub/home/wg143/htdocs/test/alt.php on line 5
NULL bool(false)
Fatal error: Call to a member function on a non-object in /pub/home/wg143/htdocs/test/alt.php on line 10

а потом опять 404.

-~{}~ 21.11.05 11:21:

Попробовал следущую конструкцию...
<?
error_reporting(E_ALL);
include ("../mainfile.php");
mysql_query (" Delete from runcms_locator ");
$news = array();
$xml = domxml_open_file("http://kovcheg.apeha.ru/inform/naim.xml");
$context = xpath_new_context($xml);
$nodes = xpath_eval($context, '//user');
var_dump($nodes);
foreach($nodes->nodeset as $node)
{

$currentNews = array();
$uid = $node->get_attribute('uid');
$nick = $node->get_attribute('nick');
$description = $node->get_attribute('description');
$place = $node->get_attribute('place');
mysql_query (" Insert into runcms_locator set nick='$nick', sity='kovcheg', ident='$uid', description='$description', place='$place', prof='N'");
$news[] = $currentNews;
};

?>

Скрипт выдаёт NULL... При этом если пишу локальный адрес то всё норм...

Вот структура xml документа к которому подключаюсь...
<?xml version="1.0" encoding="WINDOWS-1251" ?>
- <root>
- <users>
<user uid="100090432" nick="bardo" description="Вмешаюсь в бой " place="Арена: Комната Ветеранов" />
<user uid="100063819" nick="*cowboy" description="...вмешаюсь" place="Кузница" />
<user uid="100014030" nick="РокфеллеР" description="" place="Дом бойцов" />
<user uid="100062045" nick="-Эльф-" description="Услуги наёмника " place="Кузница" />
<user uid="31116" nick="PenMan" description="Не работаю" place="Кузница" />
</users>
</root>

-~{}~ 21.11.05 13:02:

Продолжая тестить попробовал следущую конструкцию...
PHP:
<?php 
if ($dom1 = domxml_open_file("http://kovcheg.apeha.ru/inform/naim.xml")) 
{ 
    echo "ok"; 
} 
else 
{ 
    echo "bad"; 
} 
?>
получил следущин ошибки:
Warning: domxml_open_file(): xmlNanoHTTPConnectAttempt: Connect attempt timed out. in /pub/home/wg143/htdocs/test/test.php on line 2

Warning: domxml_open_file(): warning: in /pub/home/wg143/htdocs/test/test.php on line 2

Warning: domxml_open_file(): failed to load external entity "http://kovcheg.apeha.ru/inform/naim.xml" in /pub/home/wg143/htdocs/test/test.php on line 2
bad

В конец запутался..в чём проблема....
 

Nutty

Новичок
пробуй сперва скачивать себе файл,а потом уже с ним работать
 
Сверху