В общем есть задача - удалить дубли записей в доске объявлений по признаку - совпадение 2 полей - заголовок и содержание.
как я сделал:
Вот в чем проблема: к примеру есть запись 3811 и её дубли 2331, 2207.
так вот при переборе всех значений с $sql я не знаю как пометить или удалить только дубли, чтобы не стереть оригинал.
пробовал ставить дополнительное поле flag - чтобы в нем помечать дубли, неполучилось, и ли как то удалять дубли из $sql ?
как я сделал:
Код:
$sql = mysql_query("SELECT * FROM `jos_adsmanager_ads` WHERE `ad_price` != '' AND `ad_phone` != ''");
...
while ($row = mysql_fetch_array($sql))
$id = $row[0];
$head = $row[8]; // загловок
$text = $row[9]; // содержание
...
// ищем дубли и помещаем их в $result
$result = mysql_query("SELECT * FROM `jos_adsmanager_ads` WHERE `id`!='{$id}' AND `ad_text` = '{$text}' AND `ad_headline` = '{$head}');
$num_r = mysql_num_rows($result); //кол-во дублей
if ($num_r >0){
while ($row2 = mysql_fetch_array($result)) {
$id2 = $row2[0]; // ид дубля
// проблема
}
Вот в чем проблема: к примеру есть запись 3811 и её дубли 2331, 2207.
так вот при переборе всех значений с $sql я не знаю как пометить или удалить только дубли, чтобы не стереть оригинал.
пробовал ставить дополнительное поле flag - чтобы в нем помечать дубли, неполучилось, и ли как то удалять дубли из $sql ?