prueba esto...
Código PHP:
<?php
$sql = "SELECT crid, caract FROM caracteristicas where crid= '$caracte'";
echo "<pre>$sql</pre>";
$sql = mysql_query($sql) or die(mysql_error());
var_dump(mysql_num_rows($sql));
?>
osea, debes depurar todo... para asegurar que realmente pasa algo....
por cierto, si el campo de tu tabla es INT no debes usar comillas en tu consulta... ya que es un entero, no string...
Código:
... WHERE crid=123 vs ... WHERE crid='123'