Đó là bởi vì đôi khi mysql_query trả về boolean false (lỗi truy vấn). Bạn cần kiểm tra nó:
$amn = mysql_query("SELECT * FROM `Messages` WHERE to_user='$usr' AND read='0'");
if($amn === false) {
var_dump(mysql_error());
}
else {
print_r(mysql_num_rows($amn));
}
Mã trên được viết theo phong cách xấu và không được dùng nữa. Sử dụng PDO với Ngoại lệ trong các dự án thực tế.