есть такое...суть такова что есть некая страна а в ней есть курорты...
страна 1 (курорт1 курорт2 курорт3)
страна 2 (курорт4 курорт5 курорт6)
$xml = simplexml_load_file('countries.xml');
$title = $xml->xpath('//country[@id = "'.$c.'"]/resorts/resort/title'); // выбираю все тайтлы
$id = $xml->xpath('//country[@id = "'.$c.'"]/resorts/resort/@id'); // выбираю все айди..т.к. курорты начинаются не с 1 в каждой стране
// здесь цикл
$id[0] = равняется айди первого курортай той или иной страны
но если сделать так
$i = $id[0];
счетчик не считает...а просто, айди первого курорта страны. если ставить $i = '1'; то счетчик работает, но соответственно с 1...
foreach ($title as $name)
{
echo '<a href="'.MY_HOST.'main/read/'.$page.'?c='.$c.'&r='.$i++.'">'.$name.'</a><br>';
}
echo $node;
}
}
Спустя 1 час, 19 минут, 6 секунд (15.10.2011 - 22:47) psychild написал(а):
вообще не пойму в чем бок...
Спустя 44 минуты, 52 секунды (15.10.2011 - 23:32) Winston написал(а):
Дай код xml, и насчет ссылок объясни, а то не совсем вкурил...

Спустя 11 часов, 59 минут, 38 секунд (16.10.2011 - 11:32) psychild написал(а):
мне нужно узнать, с какой цифры начинаются айди курортов в той или иной стране.
Добавлено через 13 минут
Причем id в resort начинаеться с 1 только в первой стране....а потом идет по очереди, не начинаясь с 1 в новой стране.
Передо мной стала задача сначала вытащить ссылки на страны.
Потом при нажатии на ссылку, открывалась страна, и в виде ссылок названия курортов, при нажатии на которые, просто открывалось описание курорта.
Вот гавнокода:
Добавлено через 13 минут
<countries>
<country id=”…”>
<title>…</title>
<text>…</text>
<resorts>
<resort id=”…”>
<title>…</title>
<text>…</text>
</resort>
<resort id=”…”>
<title>…</title>
<text>…</text>
</resort>
…
</resorts>
</country>
…
</countries>
Причем id в resort начинаеться с 1 только в первой стране....а потом идет по очереди, не начинаясь с 1 в новой стране.
Передо мной стала задача сначала вытащить ссылки на страны.
Потом при нажатии на ссылку, открывалась страна, и в виде ссылок названия курортов, при нажатии на которые, просто открывалось описание курорта.
Вот гавнокода:
$xml = simplexml_load_file('countries.xml');
$c=$_GET['c'];
$r=$_GET['r'];
if (isset($r)) { //если есть переменная с айди страны...и айди курорта вывожу его
$nodesas1 = $xml->xpath('//country[@id = "'.$c.'"]/resorts/resort[@id = "'.$r.'"]/title');
$nodesas = $xml->xpath('//country[@id = "'.$c.'"]/resorts/resort[@id = "'.$r.'"]/text');
foreach ($nodesas as $resort)
{
echo "<strong style='font-size:26px;'>$nodesas1[0]</strong><br>$resort";
}
}
else // если есть айди страны...но нет айди курорта...выводим текст курорта и ссылки на курорты
if(isset($c) && !$r)
{
$nodes = $xml->xpath('//country[@id = "'.$c.'"]/text');
$nodes1 = $xml->xpath('//country[@id = "'.$c.'"]/title');
$nodes2 = $xml->xpath('//country[@id = "'.$c.'"]/resorts/resort/title');
$nodesss = $xml->xpath('//country[@id = "'.$c.'"]/resorts/resort/@id'); //я получаю массив со всеми айди курортов данной страны
foreach ($nodes as $node)
{
echo "<strong style='font-size:26px;'>$nodes1[0]</strong>";
echo "<br><p style='font-size:26px;'>Курорты:<p>";
$i = $nodesss[0]; // получаю первое значение массива с айди и пытаюсь увеличить его на 1, но не выходит
foreach ($nodes2 as $nodea)
{
echo '<a href="'.MY_HOST.'main/read/'.$page.'?c='.$c.'&r='. $i++ .'">'.$nodea.'</a><br>';
}
echo $node;
}
}
else {
$nodes = $xml->xpath('//country/title'); // здесь выхватываю заголовки всех стран и формирую ссылку.
$b = 1;
foreach ($nodes as $id)
{
echo '<a href="'.MY_HOST.'main/read/'.$page.'?c='.$b++.'">'.$id.'</a><br>';
}
}