[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: строка в таблице
Sash'ok
Здравствуйте. у меня такая проблема.

есть необходимость сделать в форуме ссылку "удалить" возле каждого сообщения.
Но в категории, первое сообщение не каждой темы имеет id=1
а мне нужно сделать так:

если сообщение в этой теме первое, то выполняется 1 запрос к базе на удаление всех сообщений этой темы и 2 запрос на удаление темы.
а если сообщение в теме не первое, то удалять только это сообщение.

Подскажите плиз, как выполнить запрос к базе, так чтоб определить первое сообщение базы. id которого не равно 1

код для выбора id примерно такой
PHP
$result = dbquery("SELECT * FROM ".$db_prefix."posts WHERE forum_id=$forum_id AND thread_id=$thread_id");
$post=dbarray($result);

а дальше проблема. как выбрать пост именно с наименьшим id для данного форума ($forum_id) и темы ($thread_id") ???



Спустя 10 часов, 9 минут, 7 секунд (18.10.2009 - 11:02) web-dev написал(а):
PHP
$id=$_GET['id']; // это id сообщения которое нужно удалить
$result = dbquery("SELECT id FROM ".$db_prefix."posts WHERE forum_id=$forum_id AND thread_id=$thread_id AND id<'$id'");
if (mysql_num_rows($result)==0) // сообщений с меньшим id нет, следовательно оно первое
{
    dbquery("DELETE FROM ".$db_prefix."posts WHERE forum_id=$forum_id AND thread_id=$thread_id");
}
else // не первое, значит удаляем только одно сообщение
{
    dbquery("DELETE FROM ".$db_prefix."posts WHERE forum_id=$forum_id AND thread_id=$thread_id AND id='$id'");
}

Спустя 1 день, 12 часов, 50 минут, 50 секунд (19.10.2009 - 23:53) Sash'ok написал(а):
web-dev, Спасибо большое! Все верно. именно так и нада было сделать smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.