Para todo ese "juego" que haces con los ceros a la izquierda tienes la función:
str_pad()
http://www.php.net/str_pad
No sé como gestionas (la estructura) de tu tabla de los "tickets" .. pero si usas (como deberías) un campo tipo "ID" y autonumérico .. ahí ya tendrías tu "número correlativo".
Se trata de que cuando hagas tu "INSERT" a tu BBDD generando ese registro de "ticket" .. en el mismo proceso obtienes tu "ID" último generado (no con "MAX()" que no es seguro) sino con:
mysql_insert_id()
http://www.php.net/mysql_insert_id
O su equivalente en SQL (LAST_INSERT_ID())
Y en el mismo proceso haces un "UPDATE" a ese registro para generar tu "código" de tu n° de ticket:
UPDATE tabla SET ticketnumber='$ticketnumber' WHERE id='$id'
Donde "$id" lo habras sacado por la función mysql_insert_id() y el "$ticketnumbre" es todo esa lógica que quieres aplicar (que no comparto .. pero bueno allá los requisitos de cada aplicación ... y de quien las diseña).
De hecho todo esto se debería hacer de una en SQL. Sería algo tipo: (ojo, no es correcto .. revisa la documentación de Mysql):
UPDATE tabla SET ticketnumber=CONCAT(CURDATE(),campo_numero_cotizac ion,funcion_tipo_str_pad_de_PHP(LAST_INSERT_ID())) WHERE id=LAST_INSERT_ID()
(no sé si con un INSERT directo saldría . .habría que probarlo)
Revisa la documentación de Mysql sobre su SQL y mira las funciones de tratamiento de cadenas:
http://dev.mysql.com/doc/refman/5.0/...functions.html
Un saludo,