Доброго времени суток!
Есть у меня PHP-код. Он находит в БД самую "старую" запись, а именно запись у которой в столбце "last" типа datetime самая старая дата стоит в сравнении с другими. Берёт ID этой записи и обновляет её дату на нынешнюю.
Однако как я не крутил этот код и не пытал, он меняет дату не у одной записи, а у всех что подходят под описание status=1. Как это исправить и почему это происходит?
//Получаем из БД самую старую запись
$sql1 = mysql_query("SELECT `id` FROM advert WHERE status=1 ORDER BY last LIMIT 1");
//Проверяем есть ли вообще записи подходящие под описание
if(mysql_num_rows($sql1) != 0){
//Создаем ассоциативный массив найденной записи
$adata = mysql_fetch_assoc($sql1);
//Задаем переменную с нынешним временем
$now = date("Y-m-d H:i:s");
//Меняем дату у найденной записи
mysql_query("UPDATE advert SET last = '".$now."' WHERE id=".$adata['id']);
}
P.S. Если выполняю запрос "SELECT `id` FROM advert WHERE status=1 ORDER BY last LIMIT 1" через PhpMyAdmin то получаю одну единственную запись, которая мне и нужна.