Новости‎ > ‎

Что означает "плохо протестировал"

Отправлено 22 июн. 2012 г., 5:51 пользователем Denis Baskovsky   [ обновлено 22 июн. 2012 г., 5:51 ]
Итак, прошло около 2 месяцев спустя выкладывания interesnosti.16mb.com.

В день на сайте от 3-7 человек!

И как назло нашлась ужасно дебильная моя ошибка - все из-за плохого тестинга (было бы лучше, если хостинг предлагал возможность работать с удаленной mySQL базой не только через свой домен).
Сам я вообще-то не нахожу факты, их просто парсит "мудренный" скрипт при помощи библиотеки simple_html_dom.

Ну а проблема в следующем - скрипт не кидает в БД различные строки в ANSII кодировки. Думаю, проблема в следующей регулярке на PHP, либо в дурацкой поддержки UTF-8 на PHP 5.3.

PHP код

function DelTags($text) {
    $text = strip_tags($text);
    $text = preg_replace("/&\S+;/i", "" ,$text);
    $text = trim($text);
       
    return $text;
}

function GetFacts($siteurl) {
    $html = file_get_html($siteurl);
    $str;
   
    switch ($siteurl) {
        case "http://www.censored.ru/" : {
            $txt = $html->find('div[id=main] #content');// находим факт   
           
            //Проверка
            if($txt != "")
            {
                $str = DelTags($txt[0]);
            }
        } break;
           
        case "http://www.censored.ru/random/" : {
            foreach($html->find('small, span, br, a, .share') as $tmp)
                    $tmp->outertext = ''; //удаляем мусор    
                      
            $txt = $html->find('.fact h1', 0)->innertext;// находим факт
              
            if($txt != "")
            {
                $str = DelTags($txt); 
            }         
        } break;
     
        default: break;
    } 
   
    // подчищаем за собой
    $html->clear();
    unset($html);
   
    return $str;
}

Ниже результат позорной работы скрипта :(


P.S. В любом случае переделывать скрипт лень, лето, как-никак :D
P.S.S Хорошо что хоть на Vk группе постится все нормально (однако в этой группе до сих пор 0 человек :))
Comments