Мой XML выглядит следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<Allvotes>
<vote score="2" ip="116.971.203.221"/>
<vote score="5" ip="32.97.233.5"/>
<vote score="3" ip="212.977.233.225"/>
<vote score="5" ip="2.80.233.225"/>
</Allvotes>
Когда на моем флеш-сайте (AS2) кто-то нажимает кнопку «голосовать», скрипт на PHP получает свой IP… Мне нужно запустить специальную функцию, зависит от того, существует ли его IP в файле XML или нет.
Если его IP-адрес уже существует, PHP отправляет сообщение: «УЖЕ ГОЛОСОВАНО!», Когда IP-адрес не существует в XML, тогда я хочу запустить функцию, которая хранит его голос и IP-адрес в формате XML.
Пока я знаю, что этот скрипт PHP не работает:
$dom = new DomDocument('1.0', 'UTF-8');
$myXML = "votes.xml";
$s="";
if ($_POST['todo']=="vote"){
$ip=$_SERVER['REMOTE_ADDR'];
$dom->load($myXML);
$allVotes= $dom->getElementsByTagName('vote');
foreach ($allVotes as $vote){
if ($vote->getAttribute('ip')==$ip){
$s.="&msg= Already Voted";
echo $s;
break;
}else{
doOtherStuff
}
}
}
Проблема в том, что этот цикл запускает функцию doOtherStuff, когда IP не находится на первом узле ...
Есть ли магический трюк для этого?