Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: обновления подрят нескольких строк

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
mes.01
Отправлено: 05 Сентября, 2011 - 21:07:32
Post Id



Новичок


Покинул форум
Сообщений всего: 11
Дата рег-ции: Авг. 2011  


Помог: 0 раз(а)




есть такая таблица:
********************
wg_id * user_id * slide
********************
2 * 1 * 1
6 * 1 * 3
1 * 2 * 1
44 * 1 * 2

то есть при запросе с критерием user_id=1 выводиться:
2
44
6

есть ещё массив:
$slide=array("3", "2", "1");

вообщем надо написать запрос где поочерёдно обновляются строки в таблице с данными с массива $slide

и в итоге получалось бы так:
********************
wg_id * user_id * slide
********************
2 * 1 * 3
6 * 1 * 2
1 * 2 * 1
44 * 1 * 1
 
 Top
-=1100=-
Отправлено: 06 Сентября, 2011 - 11:23:50
Post Id



Частый гость


Покинул форум
Сообщений всего: 156
Дата рег-ции: Май 2007  
Откуда: Город Святого Петра


Помог: 0 раз(а)

[+]


А если что то вроде
PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. $id=1;
  4.  
  5. foreach($slide as $str){
  6.  
  7. UPDATE *** SET slide= $str  WHERE user_id= $id;
  8.  
  9. }
  10.  
  11.  


-----
INSPIRON |6400
 
 Top
mes.01
Отправлено: 06 Сентября, 2011 - 19:13:20
Post Id



Новичок


Покинул форум
Сообщений всего: 11
Дата рег-ции: Авг. 2011  


Помог: 0 раз(а)




-=1100=-, не получаеться( пробовал уже..
надо как то с LIMIT попробовать

(Отредактировано автором: 06 Сентября, 2011 - 19:14:12)

 
 Top
mes.01
Отправлено: 06 Сентября, 2011 - 22:18:00
Post Id



Новичок


Покинул форум
Сообщений всего: 11
Дата рег-ции: Авг. 2011  


Помог: 0 раз(а)




почти такую же проблему нашёл ( http://livestreet[dot]ru/blog/6304[dot]html ) неужели никто не знает как это решить???!!! Нахмурился
 
 Top
tuareg
Отправлено: 07 Сентября, 2011 - 01:47:06
Post Id


Участник


Покинул форум
Сообщений всего: 1234
Дата рег-ции: Июнь 2010  


Помог: 69 раз(а)




mes.01 пишет:
есть такая таблица:
********************
wg_id * user_id * slide
********************
2 * 1 * 1
6 * 1 * 3
1 * 2 * 1
44 * 1 * 2

то есть при запросе с критерием user_id=1 выводиться:
2
44
6

есть ещё массив:
$slide=array("3", "2", "1");

вообщем надо написать запрос где поочерёдно обновляются строки в таблице с данными с массива $slide

и в итоге получалось бы так:
********************
wg_id * user_id * slide
********************
2 * 1 * 3
6 * 1 * 2
1 * 2 * 1
44 * 1 * 1

Сначала выдергиваете wg_id
Запрос
PHP:
скопировать код в буфер обмена
  1.  
  2. $sql=mysql_query(SELECT wg_id  FROM *** WHERE user_id=1)
  3. $i=0;
  4. while($row=mysql_fetch_array($sql)){
  5.  UPDATE *** SET slide=$slide[$i] WHERE wg_id=$row[0]
  6. ++i;
  7. }
  8.  

Писал на вскидку, возможны ошибки, логика такова, нужно выдернуть не повторяющееся значение(уникальный ключ) и по нему обновлять.
Если значения повторяются, тогда, узнавать количество COUNT(*) WHERE user_id=1
и через цикл можно for()
запрос такой
PHP:
скопировать код в буфер обмена
  1.  
  2. UPDATE *** SET slide=$slide[$i] WHERE user_id=1 LIMIT $i 1
  3.  

На счет этого абсолютно не знаю поддерживается ли LIMIT при UPDATE

(Отредактировано автором: 07 Сентября, 2011 - 01:51:38)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB