salut,
Pour une trace de chaque étape, il te faut effectivement une table supplémentaire permettant la liaison entre la table de départ.
par exemple
# les clients
CREATE TABLE clients (
idclient INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
nom VARCHAR(20) NOT NULL,
prenom VARCHAR(20) NOT NULL,
email VARCHAR(255) NOT NULL,
motdepasse VARCHAR(128) NOT NULL
)
ENGINE = innodb;
#table des statut des Interventions
CREATE TABLE statutIntervention (
idstatut INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
nomstatut VARCHAR(20) NOT NULL
)
ENGINE = innodb;
# les commadnes des clients
CREATE TABLE interventions (
idintervention INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
idclient INT NOT NULL,
idstatut INT NOT NULL, # statut courant
commentaire text not null
)
ENGINE = innodb;
# Ajout des FK sur la table commandes
ALTER TABLE interventions ADD CONSTRAINT fk_client FOREIGN KEY (idclient) REFERENCES clients (idclient);
ALTER TABLE interventions ADD CONSTRAINT fk_statut FOREIGN KEY (idstatut) REFERENCES statutIntervention (idstatut);
# la table de suivis des étapes commandes
CREATE TABLE suivisintervention (
idintervention INT NOT NULL,
idstatut INT NOT NULL,
datestatut DATE NOT NULL
)
ENGINE = innodb;
# Fk de la table suiviscommandes
ALTER TABLE suivisintervention ADD CONSTRAINT fk_intervention FOREIGN KEY (idintervention) REFERENCES interventions (idintervention);
ALTER TABLE suivisintervention ADD CONSTRAINT fk_statut_int FOREIGN KEY (idstatut) REFERENCES statutIntervention (idstatut);
A partir de la, lorsqu'une intervention change de statut (dans le formulaire, la liste déroulante étant faite à partir de la table statutintervention) tu insert, dans la table suivisintervention, une ligne indiquant l'id de l'intervention, l'id du statut et la date du l'instant présent en gros
insert into suivisintervention (idintervention, idstatut, datestatut) values (412,528,now());
et donc un simple select avec une jointure peu te fournir la liste des statuts sur une intervention avec la date
select nomstatut, datestatut from
suivisintervention
join statutintervention using(idstatut)
where idintervention=412;
bien sur le 412 est un exemple
Je te conseil de regarder (bien en profondeur

)un cours sur le modèle entité association de la méthode merise, pour voir comment on modélise une base ça pourra t'aider.
ps : l'explication ça va, mais fait un p'tit effort sur la syntaxe et on te comprendra mieux
@+
Il en faut peu pour être heureux ......