Gå til innhold

Legg inn data på to tabeller, med samme ID


Anbefalte innlegg

Jeg har nå en spørring, en ganske enkelt en som er slik:

 

INSERT INTO
pm_projects
(project_name, description, deadline, created_by, last_updated)
VALUES
('$project_name','$description', '$formatted_deadline', '$userinfo['user_id']', '$formatted_deadline')

 

Dette fungerer ypperlig og på tabellen pm_projects genereres da en automatisk ID på raden project_id.

 

Utfordringen kommer da på samme spørring, hvor jeg skal legge inn data på en tabell som heter pm_project_members. pm_project_members har to viktige rader, det er project_id (som er INT(10)) og en user_id (INT(10)). Her vil jeg at når dataen legges inn på pm_projects og pm_project_members så skal project_id på begge tabellene være like, slik at jeg senere kan hente ut data fra både pm_project_members og pm_projects med en samme project_id.

 

Problemet ligger jo hovedsaklig i at pm_projects inneholder kun prosjektinfo (som kun bruker 1 rad per prosjekt) mens pm_project_members kan ha alt fra 1 til 200 medlemmer.

 

Har noen forslag til hvordan dette løses?

Endret av salah
Lenke til kommentar
Videoannonse
Annonse

Problemet er at jeg må få tak i siste project_id fra pm_projects og putte det inn i project_id på pm_project_members via SQL.

 

Det må da gå ann å be MySQL hente ut den siste project_id fra pm_projects og putte den i pm_project_members?

Lenke til kommentar

mysql_insert_id() ?

 

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
   die('Could not connect: ' . mysql_error());
}
mysql_select_db('mydb');

mysql_query("INSERT INTO mytable (product) values ('kossu')");
printf("Last inserted record has id %d\n", mysql_insert_id());
?>

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...