Função PDO setFetchMode

Olá eu estava tentando fazer funcionar com PDO mas recebendo erro (novo para PDO) aqui é meu código

    function mail_id($mail){
    global $host, $dbname, $user, $pass;
    $DBH = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
    $STH = $DBH->query("select count(from) from messages where from = '$mail'");
    $STH->setFetchMode(PDO::FETCH_ASSOC);
    $row = $STH->fetch();
    return $row;
}

Eu quero contar a linha de e aqui está o fora colocar eu estava tentando

$mail=mail_id($userid);
if (0<count($mail['to_viewed'])) {echo "green";} else {echo "gray";}

esse é o erro

Call to a member function setFetchMode() on a non-object

por favor ajude thx

questionAnswers(1)

yourAnswerToTheQuestion