Si: Por un lado, el mensaje de error es de PHP y no de MySQL. Habitualmente es un problema del script PHP, lo que se escapa al alcance del Foro, ya que por reglas del mismo
aquí no se pone código de programación, sea PHP o cualquier otro, s´lo SQL.
Pero cuando se analiza el mensaje parece estar diciendo que esperaba un parámetro tabla o respuesta de consulta, para ser un
recurso de consulta, y está recibiendo
un parámetro booleano. Eso implica que algo no está bien en la consulta, porque está saliendo como error no administrado.
Si observamos al segunda consulta, vemos que su sintaxis es:
Código sql:
Ver originalSELECT
MAX(id),
id_phone,
lat,
lon,
DATE,
TIME
FROM ft_routes
WHERE id_phone='valorDeUnTelefono';
Este código tiene tres errores, dos de sintaxis y dos de uno de nombres:
Por un lado, cuando usas una
función agrupada (MAX, MIN, AVG, COUNT, o la que sea), junto con otros valores que no lleven una,
forzosamente debe ir una cláusula GROUP BY en base a uno o más campos.
En segundo lugar, estás usando DATE y TIME como nombres de campos, y esas son
palabras reservadas, es decir, son denominaciones de funciones y tipos de dato, y pueden generar errores de ejecución en la consulta. O les pones otros nombres o los encierras entre acentos agudos (`) para que MySQL sepa que estás invocando nombres de campos.