Bonjour tout le monde,

Le code suivant permet d'insérer dans deux tables simultanément (table1, table2).

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
//requête permettant l'insertion dans table1, la clé primaire est ID (Non Auto-incrémenté)
$insertSQL = sprintf("INSERT INTO table1 (NUM, NOTES, EXPENSES, CURRENCY, CONTACT) VALUES (%s, %s, %s, %s, %s)",
                       GetSQLValueString($_POST['NUM'], "text"),
                       GetSQLValueString($_POST['NOTES'], "text"),
                       GetSQLValueString($_POST['EXPENSES'], "double"),
                       GetSQLValueString($_POST['CURRENCY'], "text"),
                       GetSQLValueString($_POST['_CONTACT'], "text"));
mysql_select_db($database_procreativ, $procreativ);
$Result1 = mysql_query($insertSQL, $procreativ) or die(mysql_error());
 
// $a contient les valeurs d'un liste déroulante multiple  
$a=$_POST['USER_ID']; 
 
//requête permettant l'insertion dans table2, la clé primaire est ID_ASSIGH (Auto-incrémenté)
 
foreach ($a as $key) {	
 
$insertSQL2 = sprintf("INSERT INTO table2 (USER_ID, NUM) VALUES (%s, %s)",
                      GetSQLValueString($key, "int"),
                      GetSQLValueString($_POST[NUM], "int"));
  mysql_select_db($database_procreativ, $procreativ);
  $Result2 = mysql_query($insertSQL2, $procreativ) or die(mysql_error());
}

L'insertion se fait parfaitement mais quand j'ai rendu la clé primaire de la table AI, l'insertion à échoué dans table 2. Ci-dessous le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
//requête permettant l'insertion dans table1, la clé primaire est ID (Non Auto-incrémenté)
$insertSQL = sprintf("INSERT INTO table1 (NUM, NOTES, EXPENSES, CURRENCY, CONTACT) VALUES (%s, %s, %s, %s, %s)",
                       GetSQLValueString($_POST['NUM'], "text"),
                       GetSQLValueString($_POST['NOTES'], "text"),
                       GetSQLValueString($_POST['EXPENSES'], "double"),
                       GetSQLValueString($_POST['CURRENCY'], "text"),
                       GetSQLValueString($_POST['_CONTACT'], "text"));
mysql_select_db($database_procreativ, $procreativ);
$Result1 = mysql_query($insertSQL, $procreativ) or die(mysql_error());
 
// $a contient les valeurs d'un liste déroulante multiple  
$a=$_POST['USER_ID']; 
 
//requête permettant l'insertion dans table2, la clé primaire est ID_ASSIGH (Auto-incrémenté)
 
foreach ($a as $key) {	
 
$insertSQL2 = sprintf("INSERT INTO table2 (USER_ID, NUM) VALUES (%s, LAST_INSERT_ID())",
                      GetSQLValueString($key, "int"));
 
  mysql_select_db($database_procreativ, $procreativ);
  $Result2 = mysql_query($insertSQL2, $procreativ) or die(mysql_error());
}