bonjour à tous !

avant toute présentation de mon soucis, je vous présente la structure de ma base :

soit 2 tables :
brands :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
Structure de la table `brands`
--
 
CREATE TABLE IF NOT EXISTS `brands` (
  `ID_marques` int(11) NOT NULL AUTO_INCREMENT,
  `marques` varchar(255) NOT NULL,
  PRIMARY KEY (`ID_marques`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=8 ;
et typ :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
CREATE TABLE IF NOT EXISTS `typ` (
  `ID_type` int(255) NOT NULL AUTO_INCREMENT,
  `ID_marques` int(255) NOT NULL,
  `type` varchar(255) NOT NULL,
  PRIMARY KEY (`ID_type`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=28 ;
Je développe en ce moment des pages PHP ou l'utilisateur renseigne le champ 'type'.

Suite à l'envoi des données de mon formulaire,
la table 'typ' est mise à jour concernant le champ 'type'. (pour ça no problem)

LE problème :
Je souhaite que la nouvelle ligne 'type', soit complétée par la dernière 'marques' enregistrée sur la table 'brands', champ : 'ID_marques' (commun aux deux tables).

Ce problème se pose sur 3 tables mais je pense que la méthode que vous pourriez me donner s'appliquera aussi à 3 tables avec des champs communs dont les données sont répliquées.

J'ai tenté une requête :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
INSERT INTO `typ` (`ID_marques`, `type`)
SELECT `ID_marques` 
FROM `brands` ORDER BY `ID_marques` DESC LIMIT 1 
VALUES (`brands.ID_marques`, `toto`) ;
mais j'ai une erreur de syntaxe à la dernière ligne

voilààààà ! si quelqu'un est inspiré...

@peluche !