Код: require('routeros_api.class.php');
function recorro($matriz)
{
foreach($matriz as $key=>$value)
{
if (is_array($value))
{
//echo $value["name"].'<br>';
//если это массив, ищу внутри
if ($value["name"] == $mac)
{
//если совпадает с нужным значением, возвращаю его для использования
return $value['.id'];
break;
}
recorro($value);
}else{
//если это непрерывный элемент
continue;
}
}
}
if ($API->connect('IP', 'USER', 'PASSWORD'))
{
echo '<br><br>';
echo 'Подключено Ok';
echo '<br><br>';
$API->write('/ip/hotspot/user/print',true);
$READ = $API->read(true);
$id = recorro($READ);
$API->write('/ip/hotspot/user/disable',false);
$API->write('=.id=' . $id);
echo 'Найдено: '.$id;
echo '<br><br>';
//print_r($READ);
echo '<br><br>';
$API->write('/ip/hotspot/active/print',true);
$READ2 = $API->read(true);
foreach ($READ2 as $value2) {
//echo $value2['mac-address'].'<br>';
if ($value2['mac-address'] == $mac)
{
$API->write('/ip/hotspot/active/remove',false);
$API->write('=.id=' . $value2['.id']);
$KILL = $API->read();
echo 'Найден ';
echo $value2['.id'];
}
}
//print_r($READ2);
$API->disconnect();
} Проблема: если я передаю значение $mac из другого веб-сайта или формы ($_GET), API кажется, не получает это значение. Если я использую $value["name"] == "MAC ADDRESS", API работает нормально. Есть какие-нибудь идеи, почему API не читает значение переменной? Спасибо.
function recorro($matriz)
{
foreach($matriz as $key=>$value)
{
if (is_array($value))
{
//echo $value["name"].'<br>';
//если это массив, ищу внутри
if ($value["name"] == $mac)
{
//если совпадает с нужным значением, возвращаю его для использования
return $value['.id'];
break;
}
recorro($value);
}else{
//если это непрерывный элемент
continue;
}
}
}
if ($API->connect('IP', 'USER', 'PASSWORD'))
{
echo '<br><br>';
echo 'Подключено Ok';
echo '<br><br>';
$API->write('/ip/hotspot/user/print',true);
$READ = $API->read(true);
$id = recorro($READ);
$API->write('/ip/hotspot/user/disable',false);
$API->write('=.id=' . $id);
echo 'Найдено: '.$id;
echo '<br><br>';
//print_r($READ);
echo '<br><br>';
$API->write('/ip/hotspot/active/print',true);
$READ2 = $API->read(true);
foreach ($READ2 as $value2) {
//echo $value2['mac-address'].'<br>';
if ($value2['mac-address'] == $mac)
{
$API->write('/ip/hotspot/active/remove',false);
$API->write('=.id=' . $value2['.id']);
$KILL = $API->read();
echo 'Найден ';
echo $value2['.id'];
}
}
//print_r($READ2);
$API->disconnect();
} Проблема: если я передаю значение $mac из другого веб-сайта или формы ($_GET), API кажется, не получает это значение. Если я использую $value["name"] == "MAC ADDRESS", API работает нормально. Есть какие-нибудь идеи, почему API не читает значение переменной? Спасибо.
