Php Sum与mysql的PDO函数
PDO新手。。。我试图得到总和,但得到错误这里是我的代码Php Sum与mysql的PDO函数,php,mysql,pdo,Php,Mysql,Pdo,PDO新手。。。我试图得到总和,但得到错误这里是我的代码 function test_score_month($student_id){ global $host, $dbname, $user, $pass; $DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass); $STH = $DBH->query("SELECT SUM(score), SUM(score_from) FROM sch
function test_score_month($student_id){
global $host, $dbname, $user, $pass;
$DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
$STH = $DBH->query("SELECT SUM(score), SUM(score_from) FROM school_test_report
WHERE
school_test_report.test_date >= last_march() and school_test_report.test_date <= march()" );
$STH->setFetchMode(PDO::FETCH_BOTH);
return $STH;
}
但是得到了错误
Call to a member function setFetchMode() on a non-object in
我试过
$STH->setFetchMode(PDO::FETCH_ASSOC);
但仍然存在相同的错误您的查询中存在语法错误:
WHERE
and
另外,您确定数据库中有march()
和last\u march()
函数吗
[+]查询数据库后始终检查错误:
if($STH){
// do your stuff
}else{
die($DBH->errorInfo()); // see the error
}
参见是否有错误信息?这就是为什么应该将PDO配置为在出现错误时抛出异常。您的查询无法执行(因为
WHERE AND
),但您没有检查返回值。抱歉,广告输入错误仍然没有和出现错误,抱歉,输入错误仍然没有和出现错误,现在我正在尝试修改脚本,仍然出现错误选择总和(分数),总和(分数从)从school_test_report,其中student_id=“$student_id”
保持简单,现在我得到输出错误$student_id=每月的测试分数($name);echo$student_id[“总和(分数)”代码>无法将PDOStatement类型的对象用作array@Harinder:你正在做$STH->fetch()
?
if($STH){
// do your stuff
}else{
die($DBH->errorInfo()); // see the error
}