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
Форумы портала PHP.SU :: Версия для печати :: Получение информации из бд [2]
Форумы портала PHP.SU » » Вопросы новичков » Получение информации из бд

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

16. Нуб-2 - 10 Мая, 2013 - 16:20:11 - перейти к сообщению
Спасибо, но этот код увеличивает не на 5, а сразу на 35.
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. require 'config.php';
  3. require 'db.php';
  4. $result = mysql_query("SELECT * FROM `users` ") or die(mysql_error()); // формирование информации из таблицы
  5. while($row = mysql_fetch_array($result)) // перебор строк таблицы с начала до конца
  6. {
  7. mysql_query("UPDATE users SET points = points + 5");
  8. }
  9. ?>
17. imya - 10 Мая, 2013 - 16:22:15 - перейти к сообщению
DeepVarvar пишет:
imya пишет:
а как тогда ему вывести ? var_dump?
Исключительно после фетча.

Понял, спасибо.


http://developerslife[dot]ru/16

Утром было такое Радость Хорошо, что база тестовая Ха-ха
18. DeepVarvar - 10 Мая, 2013 - 16:28:48 - перейти к сообщению
Нуб-2 пишет:
Спасибо, но этот код увеличивает не на 5, а сразу на 35.
Я привел целыхдва рабочих варианта на все случаи жизни.
Хотя апдейт в цикле можно переписать так:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. require 'config.php';
  4. require 'db.php';
  5.  
  6. $result = mysql_query("SELECT id FROM `users`") or die(mysql_error());
  7. $arr = array();
  8. while($row = mysql_fetch_array($result)) {
  9.   $arr[] = $row['id'];
  10. }
  11. if ($arr) {
  12.   $arr = join(",", $arr);
  13.   mysql_query("UPDATE users SET points = points + 5 WHERE id IN({$arr})");
  14. }

Так вместо шести запросов (сейчас примерно шесть), всегда будет только два.
19. Нуб-2 - 10 Мая, 2013 - 16:34:54 - перейти к сообщению
DeepVarvar пишет:
Нуб-2 пишет:
Спасибо, но этот код увеличивает не на 5, а сразу на 35.
Я привел целыхдва рабочих варианта на все случаи жизни.
Хотя апдейт в цикле можно переписать так:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. require 'config.php';
  4. require 'db.php';
  5.  
  6. $result = mysql_query("SELECT id FROM `users`") or die(mysql_error());
  7. $arr = array();
  8. while($row = mysql_fetch_array($result)) {
  9.   $arr[] = $row['id'];
  10. }
  11. if ($arr) {
  12.   $arr = join(",", $arr);
  13.   mysql_query("UPDATE users SET points = points + 5 WHERE id IN({$arr})");
  14. }

Так вместо шести запросов (сейчас примерно шесть), всегда будет только два.

Спасибо Улыбка

 

Powered by ExBB FM 1.0 RC1