Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> UPDATE, не выполняется замена  
:(
    Опции темы
morozmoroz
Дата 20.9.2012, 17:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 27.7.2012

Репутация: нет
Всего: нет



Есть запрос
Код

$s1 ="SELECT nakop,date FROM tab WHERE date>$enddate  ORDER BY s_id,date ";
 $s = mysql_query($s1) or die ('Нет связи с сервером. ' .mysql_error());while($val = mysql_fetch_array($sbt));
while($val = mysql_fetch_array($s))
  {
    .........
     $n=$n=+$val['nakop'];
     $s = mysql_query(" UPDATE tab SET  nakop='$n' WHERE date>$enddate  ");
    ........
 }



Мне надо  в цикле заменить в запросе поле nakop на накопительные данные ,сформированные в переменной $n для  всех строк,у которых дата больше выбранной даты $enddate   (из первого запроса)

спасибо.
PM MAIL   Вверх
ksnk
Дата 20.9.2012, 18:30 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 14
Всего: 386



morozmoroz, объясни что надо сделать. Только на примере.
Вот, в базе есть 4 записи у которых  date>$enddate. Nakop'ы у них, соответственно,  
1, 2, 10 и 4. 
Как должна измениться таблица после выполнения операции? 



--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
morozmoroz
Дата 20.9.2012, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 27.7.2012

Репутация: нет
Всего: нет



Хорошо.
Только то,что вы написали -это другое поле,пусть  это будет кккк ,которое ДОЛЖНО ПРИБАВЛЯТЬСЯ к значению поля nakop.
Допустим,на 16-е сентября в базе в поле kkkk было 200,значит,17 сентября должно стать так 200+1=201 и заменить надо его в поле nakop
18 сентября в поле nakop должно быть уже 201+2=203
19 сентября в поле nakop должно быть уже 203+10=213
20 сентября в поле nakop должно быть уже 213+4=217

т.е. с каждым днем 
????????
PM MAIL   Вверх
ksnk
Дата 20.9.2012, 19:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 14
Всего: 386



Тоесть каждый день один раз в день нужно вычислять некую прибавку и выполнять такой запрос?
Код

mysql_query(" UPDATE tab SET  `nakop`=`nakop`+$kkk WHERE date>$enddate  ")



--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
morozmoroz
Дата 20.9.2012, 19:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 27.7.2012

Репутация: нет
Всего: нет



да,для всех строк больших за выбранную дату,date>$enddate.Допустим,я выбрала 15 число,откорректировала данные за это число и вот с 15 числа и по сегодняший день должны данные в базе (в нашеи случае-это поле nakop) перезаписаться с учетом определенных действий.
PM MAIL   Вверх
ksnk
Дата 20.9.2012, 20:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 14
Всего: 386



Хмм... В первом посте была маловразумительная таблица tab
Во втором возникла еще некое поле kkkk
в третьем оказалось, что это еще одна таблица с возможностью изменения ранее пересчитанных значений?

Нельзя ли огласить весь список возможностей и потребностей?




--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
morozmoroz
Дата 20.9.2012, 20:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 27.7.2012

Репутация: нет
Всего: нет



Да запрос я упрощала для форума.здесь все отработает правильно,если сделать замену за ОПРЕДЕЛЕННІЙ ДЕНЬ.Но,если сделать замену за все дни больше выбранной даты,то неверно отрабатывает.
PM MAIL   Вверх
ksnk
Дата 21.9.2012, 16:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 14
Всего: 386



Цитата(ksnk @  20.9.2012,  18:30 Найти цитируемый пост)
morozmoroz, объясни что надо сделать. Только на примере.

Со структурою базы, с тестовыми данными и что должно получится. Иначе нужно обращаться к телепатам.


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0766 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.