Делаете две таблицы. Одну с заказами, вторую с содержанием заказов.
Первый запрос добавляете новый заказ.
Затем получаете последний добавленный id (LAST_INSERT_ID())
Дальше добавляете все позиции. Желательно одним запросом через запятую
INSERT INTO order_items (id, order_id, ...) VALUES (null, 1, ...),(null,1,...),...
Ну и еще все это дело в transaction можете обернуть. Либо кильнуть order если insert итемов дал ошибку