Mira aca el comportamiento de la función
http://c.conclase.net/mysql/index.ph...LAST_INSERT_ID
siempre te da 0, por que esta función tiene como objetivo, recoger la secuencia auto-increment de una tabla que acaba de ser insertada.
Por ejemplo:
Código mysql:
Ver originalQuery OK, 0 rows affected (0.06 sec)
Query OK, 1 row affected (0.00 sec)
+------------------+
+------------------+
| 0 |
+------------------+
Query OK, 1 row affected (0.00 sec)
+------------------+
+------------------+
| 2 |
+------------------+
Fijate cuando se inserta en la tabla, y el registro no es asignado automaticamente por el campo auto_increment, la función no tiene efecto.
pero cuando se inserta automaticamente el campo auto_increment, la función last_insert_id funciona bien.
En teoría ese es el problema que se te presenta.
Un saludo