Hai una tabella tab_regione e una tab_regioni, o è errore di battitura?
Se è una tabella sola:
Codice PHP:
$sql = "
SELECT DISTINCT tab_prodotti.nome, tab_prodotti.id
FROM tab_prodotti
LEFT JOIN tab_produttori ON tab_prodotti.produttore_id = tab_produttori.id
LEFT JOIN tab_regione ON tab_produttori.regione_pro_id = tab_regione.id
WHERE tab_regione.regione_id = ".$row['id'];
Se sono due, manca la correlazione con l'ultima:
Codice PHP:
$sql = "
SELECT DISTINCT tab_prodotti.nome, tab_prodotti.id
FROM tab_prodotti
LEFT JOIN tab_produttori ON tab_prodotti.produttore_id = tab_produttori.id
LEFT JOIN tab_regione ON tab_produttori.regione_pro_id = tab_regione.id
LEFT JOIN tab_regioni ON ...................
WHERE tab_regione.regione_id = ".$row['id'];