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]   

> Описание: хочу спросить про этот код, правильно ли он написан. просто мне кажется что второй раз эту конструкцию (foreach) не надо писать
Sasha777
Отправлено: 08 Декабря, 2019 - 22:23:02
Post Id



Новичок


Покинул форум
Сообщений всего: 21
Дата рег-ции: Нояб. 2019  
Откуда: Россия


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




можно ли поставить второй раз foreach?
или можно вообще без него?
PHP:
скопировать код в буфер обмена
  1.  
  2.         $sql = "SELECT * FROM accounts WHERE uid = ".$user['id'];
  3.         $result = $pdo->query($sql);
  4.         foreach($result as $row) {
  5.                 if($row['id'] == $params[1]) { $Wolf->send("н"); return; }
  6.                 $params[2] = $Wolf->replaceNum($params[2], ($row['money']));
  7.                 if($row['money'] < $params[2] || $params[2] < 1) { $Wolf->send("у"); return; }
  8.                 $sq = "SELECT * FROM accounts WHERE id = ".$params[1];
  9.                 $res = $pdo->query($sq);
  10.                 foreach($res as $rew) {
  11.                         if($rew['id'] == $params[1]) {
  12.                                 $Wolf->send("в <<".$rew['name'].">> ".number_format($params[2], '0', '', ".")."$");
  13.                                 $sql = "UPDATE accounts SET money = (money - '".$params[2]."') WHERE uid = ".$user['id'];
  14.                                 $pdo->query($sql);
  15.                                 $hello = $params[1];
  16.                                 $Wolf->report("и <<".$row['name'].">> п ".number_format($params[2], '0', '', ".")."$", $hello);
  17.                                 $sql = "UPDATE accounts SET money = (money + '".$params[2]."') WHERE id = ".$params[1];
  18.                                 $pdo->query($sql);
  19.                         } else $Wolf->send("н");
  20.                 }
  21.         }
  22.  

(Отредактировано автором: 08 Декабря, 2019 - 22:26:24)

 
 Top
andrewkard
Отправлено: 09 Декабря, 2019 - 14:06:45
Post Id


Участник


Покинул форум
Сообщений всего: 1372
Дата рег-ции: Нояб. 2014  


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




И в 1 и 2 случае он не нужен, если у Вас возвращается по одной строке в результате. Пдо используете крайне неверно, посмотрите документацию. Наименование переменных с большой буквы не приветствуется.
 
 Top
Sasha777
Отправлено: 12 Декабря, 2019 - 17:16:26
Post Id



Новичок


Покинул форум
Сообщений всего: 21
Дата рег-ции: Нояб. 2019  
Откуда: Россия


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




andrewkard пишет:
И в 1 и 2 случае он не нужен, если у Вас возвращается по одной строке в результате. Пдо используете крайне неверно, посмотрите документацию. Наименование переменных с большой буквы не приветствуется.

подскажи как правильно. я по документации не могу сделать
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB