Вход Регистрация
Файл: servis/validator/index.php
Строк: 64
<?php

##########################################
require'../../config.php';
$align='left';
$title='Валидатор';
aut();
head();
who_add(0,'enter');


if (!
$_GET['source'])
{
$go = isset($_GET['go']) ? $_GET['go'] : NULL;
switch(
$go)
{
default:
echo 
'<form action="?" method="get">
      <label>Введите адрес сайта:</label><br/>
      <input type="text" name="source" value="http://"/><br/>
      <input type="submit" value="Проверить"/>
      </form><br/>
      <a href="?go=faq">FAQ</a><br/>'
;
break;

case 
faq:
echo 
'
-С помощью данного сервиса вы можете проверить свои страницы на соответствие XML стандартам.<br/>
-WML и xHTML страницы бязательно должны соответствовать стандартам XML. HTML не так требователен, однако лишним такое соответствие не будет.<br/>
&laquo; <a href="index.php?">Назад</a>'
;
break;
}

}
else
{
$source = rawurldecode(trim($_GET['source']));

if (
preg_match('/^(http://)+[a-zA-Z_0-9/.&=?-]+$/', $source))
{
function 
validator($current)
{
global 
$lng;
$data = @fopen($current,'r');
if (!
$data)
{
return 
'Не удалось проверить указанный URL<br/>';
}
ini_set('user_agent', $_SERVER['HTTP_USER_AGENT']);
$fl = file_get_contents($current);
$xml_parser = xml_parser_create();
if (!
xml_parse($xml_parser, $fl, feof($data)))
{
$err = xml_error_string(xml_get_error_code($xml_parser));
$line = xml_get_current_line_number($xml_parser);
$column = xml_get_current_column_number($xml_parser);
xml_parser_free($xml_parser);
fclose($data);
return 
'Error [Line ' . $line . ', Column ' . $column . ']: ' . $err . '<br/>'.  code($fl,$line);
}
else
{
xml_parser_free($xml_parser);
return 
'Документ Соответствует XML Правилам<br/>' . code($fl, 0);
}
}

function 
url_highlight($fl)
{
return 
'<code>' . nl2br(preg_replace("~(&quot;|&#039;)[^<>]*(&quot;|&#039;)~iU",'<span style="color:#DD0000">\0</span>', preg_replace("~&lt;!--.*--&gt;~iU",'<span style="color:#FF8000">\0</span>', preg_replace("~(&lt;[^s!]*s)([^<>]*)([/?]?&gt;)~iU",'\1<span style="color:#007700">\2</span>\3', preg_replace("~&lt;[^<>]*&gt;~iU",'<span style="color:#0000BB">\0</span>', htmlspecialchars($fl,ENT_QUOTES)))))).'</code>';
}


function 
code($fl, $line)
{
if (
substr_count($fl, "r") > 2)
{
$arr = split("r", url_highlight(str_replace("n", null, $fl)));
}
else
{
$arr = split("n", url_highlight($fl));
}

$end = sizeof($arr);
for(
$i = 0; $i < $end; ++$i)
{
if (
$i == ($line - 1))
{
$page .= '<span class="fail_code">&#160;' . ($i + 1) . '&#160;</span> ' . $arr[$i];
}
else
{
$page .= '<span class="true_code">' . ($i + 1) . '</span> ' . $arr[$i];
}
}
return 
'<br/>' . $page . '<br/>';
}

echo 
validator($source);

}
else
{
echo 
'Введен не верный URL<br/>';
}
}
echo 
'&laquo; <a href="/servis/?">В Раздел</a>';

foot();

?>
Онлайн: 1
Реклама