从数据库打印的结果与预期的不符 需要'db/connect.php'; 如果($result=$db->query(“选择姓氏+''+姓氏作为全名,个人简历”)){ 如果($count=$result->num\u行){ 回显“

从数据库打印的结果与预期的不符 需要'db/connect.php'; 如果($result=$db->query(“选择姓氏+''+姓氏作为全名,个人简历”)){ 如果($count=$result->num\u行){ 回显“,php,Php,”,$count“”; //而($rows=$result->fetch_object()){ //打印(行); //回声“”; // } 而($rows=$result->fetch_object()){ echo$rows->full_name,,$rows->bio,; } $result->free(); } }否则{ 模具($db->错误); } 数据库表people包含两行数据,其中的列是id、first_name、last_name、bio和created 第1行:id=1,名字

”,$count“

”; //而($rows=$result->fetch_object()){ //打印(行); //回声“
”; // } 而($rows=$result->fetch_object()){ echo$rows->full_name,,$rows->bio,
; } $result->free(); } }否则{ 模具($db->错误); } 数据库表people包含两行数据,其中的列是id、first_name、last_name、bio和created

第1行:id=1,名字=kelly,姓=wafukho,bio=计算机科学家。
第2行:id=2,first_name=gonzaga,last_name=situma,bio=graphic designer

运行下面的查询时,第1行的计算机科学家为0,第2行的图形设计器为0。这可能是什么原因?我的sql语法或php处理对象有问题吗?
我正在使用mysql数据库。

您应该使用
CONCAT
函数来连接字段

 require 'db/connect.php';
if ($result = $db->query("SELECT last_name +' '+ first_name as full_name, bio FROM people")) {
    if ($count = $result->num_rows) {
        echo '<p>', $count , '</p>';

        // while ($rows = $result->fetch_object()) {
            // print_r($rows);
            // echo '<br/>';
        // }

        while ($rows = $result->fetch_object()) {
            echo $rows->full_name, ' ' , $rows->bio, '<br />';
        }

        $result->free();
    }
} else {
    die($db->error);
}

您正在提取对象,因此必须在查询中选择一行设置限制1

SELECT CONCAT(last_name, ' ', first_name) as full_name, bio FROM people

或者为多行提取数组。

看起来您无法使用
+
运算符进行字符串连接-您的数据库正在尝试将名称添加为数字,并得出零。有些数据库允许这样做,有些不允许这样做,所以您需要指明正在使用的数据库。您正在获取对象,所以必须在查询中选择一行设置限制1
if ($result = $db->query("SELECT last_name +' '+ first_name as full_name, bio FROM people limit 1")) {