ho due tabelle per gestire le news
una dove salvo i dati principali (id, autore, data etc) e nell'altra dove tramite l'id della news salvo la news nelle varie lingue (faccio un esempio semplificato)
codice:
TABELLA NEWS
id_news - autore - sezione - data
TABELLA NEWS TESTO
id_news - titolo - testo - lingua
--------
TABELLA NEWS
1 - andrea - news - 2010-08-31 21:00:00
TABELLA NEWS TESTO
1 - titolo news - ciao mondo - italiano
1 - title news - hello world - inglese
Mi sono spiegato come vengono salvati i dati? nella prima tabella salvo la news, nella seconda prelevando l'id della news specificata la scrivo nelle varie lingue in cui la voglio tradurre.
Il mio problema è come ora gestire la visualizzazione della news corretta.
Io ho una lingua principale nel mio cms (che imposto nel dati di configurazione) e poi i vari utenti registrati posso gestire la loro lingua in cui voglio vedere il sito tradotto (da connessi logicamente).
Diciamo che io ora prelevo tutte le news che ho salvato e le visualizzo nella lingua principale del sito da normale visitatore.
Da connesso però voglio vedere la news nella lingua in cui io imposto e se la news non dovesse esistere nella lingua impostata da me la visualizzo nella lingua principale del sito.
come posso fare?
avevo buttato qualcosa di simile
Codice PHP:
SELECT * FROM tabella_news
JOIN tabella_news_testo ON tabella_news.id_news = tabella_news_testo.id_news
WHERE tabella_news.stato = 1 AND tabella_news.tipo = 0 AND (tabella_news_testo.id_lingua = $sessione_id_lingua OR tabella_news_testo.id_lingua = 1)
ORDER BY tabella_news.id_news ASC
ma così non va bene perchè mi visualizza sia le news nella lingua principale del sito (tabella_news_testo.id_lingua = 1) sia nella lingua impostata dall'utente da connesso (tabella_news_testo.id_lingua = $sessione_id_lingua).
mentre come detto poco fa voglio vedere le news nella lingua impostata dall'utente da connesso e se non dov'esse esistere la news in quella lingua la visualizzo nella lingua principale del sito.
chi mi riesce ad aiutare?