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 :: Изменение записи по своему id

 PHP.SU

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


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

> Без описания
Nooo
Отправлено: 18 Апреля, 2012 - 17:40:59
Post Id


Новичок


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


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




Всем привет, возникла проблема и как решить её не знаю, в общем скрипт работает так есть таблица в ней выводится список из бд, так же есть кнопка выключить если модуль включен, и кнопка включить если модуль выключен.. но почему то при сохранении всегда изменяется последняя запись бд... как сдлеать что бы запись изменялась по своему id а не по последнему?
PHP:
скопировать код в буфер обмена
  1.  
  2. $s50 = $db->query("SELECT * FROM ".USERPREFIX."_modules");
  3. if($db->num_rows($s50) > 0){
  4. $s51 = $db->get_array($s50);
  5. do{
  6.     $status = $s51['status'];
  7.     $id_m = $s51['id'];
  8.     if($s51['status'] == "0"){
  9.         $statusM = "<img src='{$imagedir}/mods/modules/off.png' />";
  10.         $linkModules = "Включить";
  11.         $status_n = "1";
  12.     }else{
  13.         $statusM = "<img src='{$imagedir}/mods/modules/on.png' />";
  14.         $linkModules = "Выключить";
  15.         $status_n = "0";
  16.     }
  17. $name_mo = $s51['name'];        
  18. echo '
  19. <tr>
  20. <td witdh="20%">'.$s51['id'].'</td>
  21. <td witdh=20%>'.$s51['name'].'</td>
  22. <td>'.$statusM.'</td>
  23. <td><input style="margin-left:20px;" type="submit" name="save_M" value="'.$linkModules.'"/></td>
  24. </tr>
  25. ';
  26.  
  27. }while($s51 = $db->get_array($s50));  
  28. }    
  29. echo '
  30.                                                                                 </form></tbody>
  31.                                                                         </table>';
  32.                                    
  33.                     if(isset($_POST['save_M'])){
  34.                                  $select_m = $db->query("UPDATE ".USERPREFIX."_modules SET status='".$status_n."' WHERE id='".$id_m."'");      
  35.                                 if($select_m){
  36.                                   header("Location: /".$config['admin_file']."?mod=modules&status=".$status_n);  
  37.                                 }
  38.                                     }
  39.  
 
 Top
dzubchik
Отправлено: 18 Апреля, 2012 - 18:09:38
Post Id



Гость


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


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




Nooo,так у Вас где-то передаётся значение id? Я не увидел.
 
 Top
Bio man
Отправлено: 18 Апреля, 2012 - 18:38:16
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2751
Дата рег-ции: Июль 2010  
Откуда: Даугавпилс, Латвия


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




А как это относится у ООП? По делу: у тебя id_m имеет значение последней итерации цикла.
Nooo пишет:
как сдлеать что бы запись изменялась по своему id а не по последнему?
Может нужно явно указать? По своему это по какому?
 
 Top
Nooo
Отправлено: 18 Апреля, 2012 - 19:31:17
Post Id


Новичок


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


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




dzubchik
$id_m = $s51['id'];
Bio man
id который присваивается в бд, дальше идет цикл в котором каждая запись имеет свой id который берется из бд, и при выключении по этому id идет выборка из бд где изменяется запись с этим id в строке статус 1 заменяется на 0...

(Отредактировано автором: 18 Апреля, 2012 - 19:44:14)

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


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB