Primero: En este foro no tratamos temas de programación. Si tu pregunta apunta a una solución por PHP, te paso el post al foro correcto, de lo contrario tendré que eliminar el código de PHP que has posteado, dejando sólo SQL (normas del Foro de BBDD).
Sobre lo que usaste:
- MAX() funciona si y sólo si existen datos en la tabla. Si la tabla está vacía, no devuelve registros.
- LAST_INSERT_ID() devuelve datos sólo si se ejecuta inmediatamente luego del INSERT (momento en que también puedes obtener el valor con funciones del propio lenguaje de programación usado). Fuera de esa situación, los datos devueltos no resultan válidos.
Existe un truco posible para resolver el caso y que recientemente le propuse a otro forista en el Foro de PHP (
http://www.forosdelweb.com/f18/mysql...o-1-a-1038991/)
Fijate si te sirve.