The autoincrement value is generated by the database itself, when the insertion is done ; which means you cannot get it before doing the actual insert query.
The solution you proposed is not the one that's often used -- which would be :
- insert some half-empty data
- get the autoincrement value that's been generated
- do your calculations, using that autoincrement value
- update the row to put the new / full data in place -- using the autoincrement generated earlier in the
where clause of the
update query, to identify which row is being updated.
Of course, as a security precaution, all these operations have to be made in a transaction (to ensure a "all or nothing" behavior)
As pseudo-code :
insert into your table (half empty values);
$id = get last autoincrement id
update set data = full data where id = $id