Función PDO setFetchMode

Hola, estaba intentando hacer que funcionara con PDO pero obteniendo un error (nuevo en PDO) aquí está mi 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;
}

Quiero contar la fila de y aquí está la salida que estaba tratando

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

este es el error

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

por favor ayuda thx

Respuestas a la pregunta(1)

Su respuesta a la pregunta