Jump to content

Пьер

Newbie
  • Posts

    2
  • Joined

  • Last visited

Everything posted by Пьер

  1. Пересмотрел алгоритм и нашёл решение. Дело в том, что в БД данные заносились из того же массива $links. Мне нужно было убрать из БД повторяющиеся ссылки. 2Bolmazov, спасибо за напоминание о функции mysql_num_rows(). Она совсем вылетела у меня из головы. Вот решение: //Делаем выборку из таблицы $select=mysql_query("SELECT * FROM links"); $rows=mysql_fetch_array($select); do { $links=$rows['links']; //Определяем количество одинаковых ссылок $result=mysql_query("SELECT * FROM links WHERE links='$links'"); $num=mysql_num_rows($result); if($num>1)//Если одинаковых ссылок больше 1 { //Оставляем одну, остальные удаляем. $num=$num-1; $delete=mysql_query("DELETE FROM links WHERE links='$links' LIMIT $num"); } } while($rows=mysql_fetch_array($select)); Сейчас всё работает.
  2. Существует таблица с ссылками, нужно перебрать массив $links и каждый элемент массива сравнить с записями в БД. Если записи совпадают, в поле status установить 1. Пытаюсь решить эту проблему с помощью вложенных циклов и оператора if, но ничего не получается. Помогите кто знает, пожалуйста. Вот код: $id=1; $i=0; //выборка из БД $select=mysql_query("SELECT * FROM links"); $rows=mysql_fetch_array($select); //внешний цикл. работает, пока есть записи в таблице do { do//вложенный цикл. работает, пока в массиве $links есть элементы { if($rows['links']===$llinks[$i]&&$id!=$row['id'])//условие:если записи из массива и БД равны, но при этом id базы не равен $id { $update=mysql_query("UPDATE links SET status='1' WHERE links='".$llinks[$i]."'",$db);//то в поле статус заносим 1 } $i++; } while($i<count($links)); $id++; } while($rows=mysql_fetch_array($select)); Данный фрагмент кода устанавливает 1 только в строку таблицы с id=1, причём независимо, равны записи БД с элементами массива или нет.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy