Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Inserting data into multiple tables PHP MySQL

Tags:

php

mysql

dataset

I have a basic data structure for storing recipes. It consists of three tables as below:

Table 1 - Recipes (recipe_id, recipe_name)

Table 2 - Ingredients (ingredient_id, ingredient_name)

Table 3 - Recipe_Ingredients (recipe_id, ingredient_id)

I have come across a problem when adding a new recipe and would like to know the best practice for inserting.

Currently, on submitting the form I insert into the Recipes table, the recipe_id is auto generated. I then insert into the Ingredients table, again the ingredient_id is auto generated. The third step on submit is to then insert into the Recipe_Ingredients table, but how do I get the values of the recipe and ingredient ids that have just been created in order to insert them into the Recipe_Ingredients table?

I currently have separate PHP functions to insert into the Recipes and Ingredients tables.

like image 742
Ronnie Avatar asked May 12 '26 07:05

Ronnie


1 Answers

You have to get the inserted id value after each insert operation.

The function to get the last insert id is: mysql_insert_id()

like image 79
cnkt Avatar answered May 13 '26 19:05

cnkt