Vamos a ver si localizamos el error exacto. Usa mysql_error() tal cual el ejemplo:
Código PHP:
<?
//Conexion con la base
mysql_connect("localhost","newvilla_diego","diego") or die (mysql_error());
// Seleccinar la BD a trabajar.
mysql_select_db("nombre_bd") or die (mysql_error());
// Tu sentencia SQL ..
$query="select count(*) from villas where tipo='villas'";
// Ejecutar la sentencia SQL
$resultado = mysql_query($query) or die (mysql_error());
// Obtener su resultado: Como COUT() de Msyql te arroja un sólo registro con el total de registros de esa consulta "condicional" .. lo accedes directo por nº de resultado dentro del "record-set" que arrojó la ejecución de esa consulta SQL.
$registros= mysql_result($resultado,0);
// Y lo usas ..
echo $registros;
?>
Tal vez por ahí veamos cosas como "BD no existe" .. o "usuario/contraseña no válido" . .o error de sintax SQL en tal .. (no textualmente .. pero eso significará).
Un saludo,