Is the generated HTML valid i.e without serious errors. Have you inspected the code (right click in the browser -> View page source). It maybe a dumb guess but the first that comes to my mind.
Edit: Just noticed that $records is not defined. Correct the code to something like:
$HTML = '';
foreach(($records = $sth->fetch(PDO::FETCH_ASSOC)) as $row) {
$HTML.='<div>';
$HTML.= $row['State'];
$HTML.='</div><br/>';
}