Правильный вывод на экран

dichasa

Новичок
Я совсем новичок в PHP. Прошу сильно не пинать. И так вопрос. Пытаюсь делать так
PHP:
<?php
$db = new mysqli("localhost", "root", "", "bbs");
$stmt = $db->prepare('SELECT SUM(salary) FROM gtable WHERE kid = ?');
$stmt->bind_param('i', $row5['id']);
$stmt->execute();
$result = $stmt->get_result();
$sum = $result->fetch_field() ;
echo $sum ;
?>
Пишет Catchable fatal error: Object of class stdClass could not be converted to string in ...
Подскажите правильный вывод

Почитал документацию , но там ни слово не говорится о том как вывести суммированные цифры в браузер. Решио сделать так
Код:
while ($sum = $result->fetch_field()) { 
printf("Имя:         %s\n", $sum->name); }
Он мне выводит Имя: SUM(salary)
 
Последнее редактирование:

dichasa

Новичок
Код:
object(stdClass)#6 (13) { ["name"]=> string(15) "SUM(salary)" ["orgname"]=> string(0) "" ["table"]=> string(0) "" ["orgtable"]=> string(0) "" ["def"]=> string(0) "" ["db"]=> string(0) "" ["catalog"]=> string(3) "def" ["max_length"]=> int(0) ["length"]=> int(23) ["charsetnr"]=> int(63) ["flags"]=> int(32896) ["type"]=> int(5) ["decimals"]=> int(31) }
Это результат var_dump
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
@dichasa, мне он не интересен, я говорил, чтобы ты посмотрел внутрь переменной и подумал.

К тому же у тебя не совсем правильно написал вывод, тебе скорее нужен http://php.net/manual/ru/mysqli-result.fetch-array.php вместо fetch_field
 

Фанат

oncle terrible
Команда форума
Эту фигню ему на русском стаковерфлое написали
теперь рн пришел сюда узнать, что она значит
символично )
 

Фанат

oncle terrible
Команда форума
PHP:
<?php
$db = new mysqli("localhost", "root", "", "bbs");
$stmt = $db->prepare('SELECT SUM(salary) FROM gtable WHERE kid = ?');
$stmt->bind_param('i', $row5['id']);
$stmt->execute();
$stmt->bind_result($sum);
$sum = $result->fetch() ;
echo $sum ;
 

dichasa

Новичок
<?php
$db
= new mysqli("localhost", "root", "", "bbs");
$stmt = $db->prepare('SELECT SUM(salary) FROM gtable WHERE kid = ?');
$stmt->bind_param('i', $row5['id']);
$stmt->execute();
$stmt->bind_result($sum);
$sum = $result->fetch() ;
echo
$sum ;
Notice: Undefined variable: result

Эту фигню ему на русском стаковерфлое написали
теперь рн пришел сюда узнать, что она значит
символично )
Спрашивать не стыдно, стыдно не знать )
 

dichasa

Новичок
@Фанат,
давай лучше по делу. (уж ооочень не хочется спорить)
Код:
<?php
$db = new mysqli("localhost", "root", "", "bbs");
$stmt = $db->prepare('SELECT SUM(salary) FROM gtable WHERE kid = ?');
$stmt->bind_param('i', $row5['id']);
$stmt->execute();
$stmt->bind_result($sum);
$sum = $stmts->fetch() ;
echo $sum ;
это код что ты написал. но он выводит везде единицы. Подскажи пожалуйста как исправить. Просто очень надо.Хотя бы где то что то почитать
 

Фанат

oncle terrible
Команда форума
ну если убрать опечатку уже из твоего кода, то он правильный
а почему выводит "единицы" - это уже вопрос к тебе и твоим данным.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
@dichasa, посмотри в мануале что возвращается методом fetch() и почему у тебя там лишнее присваивание ты поймешь сам.
 
Сверху