Solo es cuestión de que cada vez que generes una letra verifiques antes en la base de datos, si hay algún dato. Algo como
Código PHP:
Ver original<?php
// conexiones y datos necesarios anteriores...
foreach(range('a','z') as $v){ $sql = "SELECT COUNT(*) counter FROM tabla WHERE campo LIKE '{$v}%'";
$letters[$v] = ($res['counter'] > 0 ? 'active' : null);
}
?>
<ul>
<?php foreach($letters as $k => $v): ?>
<li>
<a href="#" class="<?php echo $v; ?>"><?php echo $k; ?></a>
<?php else: ?>
<?php echo $k; ?>
<?php endif; ?>
</li>
<?php endforeach; ?>
</ul>