[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Чтение каталога с xml
ab-vrn
Всем доброго времени суток!
Уже какой день пытаюсь решить следующую задачу:
Есть каталог с файлами XML.
Каждая XML-ка имеет определённый классификатор (например, может прийти несколько xml с типом "договор" (<type>Договор</type>) или типом "Накладная" (<type>Накладная</type>) и т.д.). Содержание у них естественно разное.
Создал для примера два файла xml:

dogovor1.xml
<?xml version="1.0"?>
<title>
Договор на поставку ... № 778</title>
<type>
Договор</type>
<data>
10.04.2013</data>
<text>
Это договор...</text>

и
zayavka1.xml
<?xml version="1.0"?>
<title>
Заявка на поставку ...</title>
<type>
ДЗаявка</type>
<data>
5.03.2013</data>
<text>
Это заявка...</text>

Подскажите как вывести title только из тех xml, где <type>Договор</type>?
ab-vrn
Забыл уточнить: xml-файлов с тегом например <type>Договор</type> может быть довольно много. Всего два файла я использовал только в качестве примера.
ab-vrn
Посидел, попарился. Вот что получилось. Взял xml файл
<?xml version="1.0"?>

<message>
<data_mess
type="Договор" title="Договор на проведение работ по..."author="Иванов И И"><data_mess>
<table>
<numpp
name="№ п.п"><numpp>
<naim
name="Наименование работ"></naim>
<is
name="Исполнитель"></is>
</table>
</message>



Подключаю файл xml и вытаскиваю из него из тега "data_mess" заголовок и автора (т.е. от кого пришла xml). Вывожу всё на экран.
Делаю проверки, что, если проблемы с данными - вывожу соответствующее сооющение, а если всё в порядке - вывожу данные на экран.

$smpl_xml=simplexml_load_file('message.xml');
foreach ($smpl_xml->data_mess as $data_mess)

{

echo "<div class='box grid_12'>";

echo "<header>";
echo "<div class='inner'>";
echo "<div class='left title'>";
echo "<h1>Входящие документы</h1>";
echo "</div>";
echo "</div>";

echo "</header>";
echo "<div class='box-content no-inner-space'>";
echo "<ul class='userlist'>";
echo "<li>";

echo "<div class='avatar'></div>";

echo "<div class='info-l'>";
if (!$smpl_xml->data_mess)
{
echo "Обнаружена ошибка!<br>";
echo "Не могу прочитать наименование договора.<br>";
}
else
print($data_mess['title'].'<br>');
if (!$smpl_xml->data_mess)
{
echo "Обнаружена ошибка!<br>";
echo "Не могу прочитать отправителя договора.<br>";
}
else
print($data_mess['author'].'<br>');
echo "</div>";

echo "<div class='info-r'>";
echo "<a href='#' class='title'></a>";

echo "<span></span>";

echo "</div>";

echo "</li>";
echo "</ul>";
echo "</div>";
echo "</div>";
}

?>

Всё вроде бы ничего. Но! Не могу понять как работать не с одним xml-файлом, как в моём скрипте, а с несколькими? Т.е. мне нужно отобразить "заголовок" и "отправителя" пришедших сообщений.
И как сделать так, чтобы теги в echo генерились автоматически при наличии xml сообщения для выбранных тегов или то, что я сделал достаточно?
Народ, помогите. Я с php первый раз в жизни работаю. А так, вроде что-то написал.)))
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.