Есть запрос Код (Text): $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 (из первого запроса) спасибо.
1) лишнее есть по оплошности-упрощала запрос,вот и осталось Код (Text): $n=0; $s1 ="SELECT ar,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($s)); { ......... $n=$n+$val['ar'']; $s = mysql_query(" UPDATE tab SET nakop='$n' WHERE date>$enddate "); ........ } Из цикла ЗАМЕНУ не могу вынести,т.к. я формирую за каждый день больший выбранной даты переменную $n,а потом меняю в этой же таблице поле nakop на эту переменную $n
Что-то не вижу логики Этим ты выбираешь поля со странным названием nakop для всех строк у которых дата больше выбранной даты $enddate. Затем ты в цикле суммируешь значения nakop Затем ты говоришь что надо И почему ты считаешь что если вынести $s = mysql_query(" UPDATE tab SET nakop='$n' WHERE date>$enddate "); будет не то что ты хочешь?