PHP.SU

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


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

> Описание: Не работает получение баланса...
Jaugel
Отправлено: 25 Мая, 2017 - 07:46:41
Post Id


Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Март 2017  


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




Привет! Можешь помочь мне пожалуйста? Я пытаюсь сделать получение баланса пользователя...
Есть код:

PHP:
скопировать код в буфер обмена
  1. $mysqli = new mysqli($config['db_host'], $config['db_login'], $config['db_passw'], $config['db_name']);
  2. if ($bal = $mysqli->real_query("SELECT `balance` FROM `users` WHERE login = 'JaugelPon'")) {
  3.     $balance = floatval("$bal");
  4.     echo("Баланс: $balance руб.");
  5. }
  6. $mysqli->close();

При выполнение он возвращает "1"...
Структура таблицы, может там что-то не так?

CODE (SQL):
скопировать код в буфер обмена
  1. `id` bigint(20) NOT NULL,
  2. `login` char(32) DEFAULT NULL,
  3. `password` char(32) DEFAULT NULL,
  4. `balance` int(10) NOT NULL DEFAULT '0'

Пользователь JaugelPon есть, его баланс 3254.
При выполнении "SELECT `balance` FROM `users` WHERE login = 'JaugelPon'" в консоли PMA выводится баланс...


UPD: Починил вот так
PHP:
скопировать код в буфер обмена
  1. $mysqli = new mysqli($config['db_host'], $config['db_login'], $config['db_passw'], $config['db_name']);
  2. $result = $mysqli->query("SELECT * FROM users WHERE id=1");
  3. $row = $result->fetch_assoc();
  4. echo($row['balance']);
  5. $mysqli->close();

(Отредактировано автором: 25 Мая, 2017 - 13:49:56)

 
 Top
Vladimir Kheifets
Отправлено: 25 Мая, 2017 - 08:38:32
Post Id



Частый гость


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


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




Посмотрите пример 3
http://php.net/manual/ru/mysqli....t.statements.php
 
 Top
Jaugel
Отправлено: 25 Мая, 2017 - 09:02:47
Post Id


Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Март 2017  


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




Vladimir Kheifets пишет:
Посмотрите пример 3

Он не работает... Мне выдаёт:
CODE (Error):
скопировать код в буфер обмена
  1. Fatal error: Call to a member function fetch_assoc() on a non-object in /home/webserver/www/index.php on line 68

А на линии 68 находится:
PHP:
скопировать код в буфер обмена
  1. while ($row = $res->fetch_assoc()) {
  2.     echo " id = " . $row['id'] . "\n";
  3. }


К тому-же мне нужно вывести баланс определённого пользователя а этот пример выводит баланс всех.

(Отредактировано автором: 25 Мая, 2017 - 09:04:30)

 
 Top
andrewkard
Отправлено: 25 Мая, 2017 - 09:45:01
Post Id


Участник


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


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




Jaugel пишет:
UPD: Починил вот так

отлично. Цикл while тут не нужен,

$row = $result->fetch_assoc();

вернет первую строку набора.
 
 Top
Jaugel
Отправлено: 25 Мая, 2017 - 13:48:34
Post Id


Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Март 2017  


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




andrewkard пишет:

отлично. Цикл while тут не нужен,

$row = $result->fetch_assoc();

вернет первую строку набора.

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


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB