|
|
|
|
|
для: Trianon
(19.07.2008 в 03:32)
| | Огромнейшее спасибо за помощь все запустилось ,преклоняю голову перед профессионалом... | |
|
|
|
|
|
|
|
для: serjinio
(19.07.2008 в 03:05)
| | Уверяю Вас, без цикла выполнить его тоже не получится.
После SET должен идти оператор присваивания. У Вас же одно лишь имя поля.
Между прочим, никакого цикла здесь не требуется.
UPDATE tbl SET pos = pos - 1 WHERE pos > $pos | |
|
|
|
|
|
|
| в таблице два поля id --автоинкркментное и pos----позиция объекта ...начиная с 1,2,3,.......
id pos
1 1
2 2
7 3
8 4
12 5
67 6
|
теперь надо удалить строчку с id=7 и пересчитать по новой столбец pos (1,2,3,4,5)новое значение
<?php
$res = mysql_query ("SELECT id FROM `CATEGORIES` ",$db);
if (mysql_num_rows($res) !== 0)
{echo "<p>Данный РАЗДЕЛ не пустой!!! </p>";}
else
{
///////////если Раздел пустой удаляем его/////////////////
$result = mysql_query ("DELETE FROM `CATEGORIES` WHERE `id`='$id' LIMIT 1 ");
if ($result == 'true')
{
echo "<p>Ваш РАЗДЕЛ успешно удален!</p>";
/////////// выводим по новой с уже удаленной строчкой ///
$res=mysql_query("SELECT pos FROM `CATEGORIES` ORDER BY `pos` ", $db);
///////и обновляем в цикле значение полей столбца POS///////////////
$nn=0;
while($row=mysql_fetch_array($res))
{
$nn++;
mysql_query(" UPDATE `CATEGORIES` SET `pos` WHERE `pos` ='$nn' " , $db);
}
}
}
?>
|
,а вот в цикле и не хочет обновляться.....Помогите кто сталкивался с UPDATE в цикле... уже вторые сутки сижу и никакого просвета... | |
|
|
|
|