Example #1
0
$loader = new FileLoader();
$scanner = new Scanner($loader, __DIR__ . '/apps.json');
$curl = new Curl();
$db = new \PDO("pgsql:dbname=test;host=localhost", 'postgres', 'postgres');
$url = urldecode($_REQUEST['url']);
$url = filter_var($url, FILTER_VALIDATE_URL);
if ($url !== false) {
    // проверим - есть ли у нас уже запись по этому сайту. Если есть - обновляем
    $isset = $db->query("SELECT * FROM site WHERE url = '{$url}'")->fetch(PDO::FETCH_ASSOC);
    // если нет - распознаём и сохраняем данные
    try {
        list($url) = explode('#', $url, 1);
        $curl->load($url);
        $pageHeaders = $curl->getResponseHeaders();
        $pageContent = $curl->getResponseHtml();
        $apps = $scanner->detect($url, $pageHeaders, $pageContent);
    } catch (Exception $e) {
        $apps = [['name' => $url, 'error' => $e->getMessage()]];
    }
    // SAVE TO DB
    $db->beginTransaction();
    try {
        $data = json_encode($apps, JSON_UNESCAPED_UNICODE);
        $data = pg_escape_string($data);
        $url = pg_escape_string($url);
        $rawHeaders = pg_escape_string($curl->getResponseHeaders());
        $html = pg_escape_string($curl->getResponseHtml());
        if (empty($isset)) {
            $sql = "INSERT INTO site (url, site_data, headers, html) VALUES ('{$url}', '{$data}', '{$rawHeaders}', '{$html}')";
        } else {
            $id = $isset['id'];
Example #2
0
        .error {
            color: red;
            font-weight: bold;
        }
     </style>
</head>
<body>

<?php 
foreach ($urls as $url) {
    // проверим - есть ли у нас уже запись по этому сайту. Если есть - не нужно добавлять.
    $isset = $db->query("SELECT * FROM site WHERE url = '{$url}'")->fetch(PDO::FETCH_ASSOC);
    if (empty($isset)) {
        $apps = [['error' => 'Not parsed']];
    } else {
        $apps = $scanner->detect($url, $isset['headers'], $isset['html']);
        //        $apps = json_decode($isset['site_data'], true);
    }
    // AND DISPLAY RESULT
    ?>
    <div>
            
        <div class="url"><?php 
    echo $url;
    ?>
</div>
        <div class="engine">
        <?php 
    if (empty($apps)) {
        echo '&nbsp;';
    } else {