我想计算MySQL中列的值,并使用PHP在我的页面中显示结果。
我试过这个来获取列值
$smt=$conn->prepare("SELECT SUM(Admin_Status) FROM aplic");
$smt->execute();
$result=$smt->fetch(PDO::FETCH_OBJ);
$res=$result->SUM(Admin_Status);
echo $res;
更具体地说,我正在创建一个PM(个人消息系统),为此我在表中创建了读取和未读取的列,现在我希望该用户看到他有多少新消息。 / p>
答案 0 :(得分:1)
您不能以这种方式使用查询的返回值,因为PHP会将其解释为要执行的方法。
如果您在查询中为字段提供检索别名,则可以从对象中正确使用该字段。
SELECT SUM(Admin_Status) AS status FROM aplic
允许你使用
$result=$smt->fetch(PDO::FETCH_OBJ);
$res=$result->status;
echo $res;
或者,您可以使用以下语法
$res=$result->{'SUM(Admin_Status)'}
但我非常投票决定使用第一个替代方案,只是给返回的列添加别名。