или фильтр или удаление дубликатов

367
.
Мастер PHP
Есть одна задача пока решить не могу так как давно практики не было вот собственно сама задача
Есть парсер RSS лент новостей поставил на крон 3 парсера по 5 минут вот все спарсеные записи записываю на БД. Проблема в том что мне нужно отфильтровать дубликаты или написать запрос чтобы добавить его в крон чтоб с помощью запроса удалять все.
.
Мастер PHP
Вот таблица
Прикрепленные файлы:
.
jaras
Мастер PHP
Сам парсер ФИЛЬТР ПОЧЕМУ ТО ПРОПУСКАЕТ ПОКА ПОНЯТЬ НЕ МОГУ ПОЧЕМУ

$url = '####'; // откуда парсим

$rss = simplexml_load_file($url);
$i=0;
$cate= "Новости в мире";
$copy= "COPY";

  if($rss){
            $items = $rss->channel->item;
            $num = (int)$rss->count;

            foreach($items as $item){ 
            $i++;
  if($i==5) { break;} else {
      $result = mysql_query("SELECT * FROM `ultynews` WHERE `dataPub` = '".$item->pubDate."' ");         

        if( !mysql_num_rows($result) ) {
                                         mysql_query("INSERT INTO `ultynews` SET
					`name` = '" . mysql_real_escape_string($item>title) . "',
                                        `tname` = '" . mysql_real_escape_string(translit($item->title)) . "',                                                     
					`text` = '" .$item->description . "',
					`ulty` = '" . $copy . "',
					`dataPub` = '" . $item->pubDate . "',
                                        `img` = '" . (string)$item->enclosure->attributes()->url . "',
                                        `cate` = '" .$cate . "',
					`time` = '" . time() . "'");             
            echo "Новость Добавлена!".$i;
        }
        else {
            echo "Ошибка! Такая Новость Есть.";
            mysql_close();
        }

  }
  
}
}
.
(\/)____o_O____(\/)
jaras, у новости должно быть какое то уникальное поле, может ид, его и проверяй
.
(\/)____o_O____(\/)
jaras, можно создать уникальное поле, добавь в таблицу поле и пиши туда например время и имя в мд5
.
jaras
Мастер PHP
Koenig, Id не подходит я проверку делал по название новости
Название новости > транслит на eng с фильтром на все символы > отфильтрованный название записоваетя как ключ для проверки и перед записью проверяется на дубль таким же способом
.
Мастер PHP
Но почему-то внутри цикла пропускает дубли даже если в условие есть break
.
(\/)____o_O____(\/)
jaras, брэйк рубит весь цикл, надо сделать условие с континие, и цикл просто будет пропускать запись
.
Мастер PHP
Koenig, Прикол в том что цикл не рубиться даже если есть совпадение на дубль
.
Мастер PHP
Koenig, Если не сложно напиши свой вариант
Всего: 17