Bonjour,

La question pourrait paraître idiote aux développeurs confirmés, mais étant autodidacte débutant, je préfère tout de même poser la question.

=> Est-il possible de supprimer une ligne d'une table, et d'une seule table, en faisant une jointure avec une seconde table dans la requête MySQL ?

Prenons un exemple simplifié pour que ce soit plus parlant.

1/ Disons que j'ai une table "annonces" à 3 champs : id, texte, categorie

2/ J'ai un seconde table "categories" à 2 champs : id, id_responsable

3/ J'aimerais créer un formulaire en ligne permettant au responsable d'une catégorie de supprimer une annonce.

4/ Par prudence, j'aimerais m'assurer au niveau de la requête MySQL qu'un responsable ne peut supprimer que des annonces classées dans une catégorie qu'il gère.

5/ Ne vais-je pas créer de problèmes en utilisant une requête qui ressemblerait à :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
$sql = "
DELETE FROM annonces a
left join categories c on a.categorie = c.id
where a.id = '".(int)$_REQUEST["id_annonce"]."' and c.id_responsable = '$id_responsable_extrait_de_la_session'
limit 1;";

Merci par avance pour votre aide